POJ NOI MATH-7830 求小數的某一位
- 總時間限制:
- 1000ms
- 記憶體限制:
- 65536kB
- 描述
-
分數a/b化為小數後,小數點後第n位的數字是多少?
- 輸入
- 三個正整數a,b,n,相鄰兩個數之間用單個空格隔開。0 < a < b < 100,1 <= n <= 10000。
- 輸出
- 一個數字。
- 樣例輸入
-
1 2 1
- 樣例輸出
-
5
- 來源
- 《奧數典型題舉一反三(小學五年級)》 (ISBN 978-7-5445-2882-5) 模擬試卷二 第3題
問題分析
不斷地使用分數進行計算,才能精確地算出小數點後的第n位。計算過程中,分母不變,分子不斷在變化。
程式說明
(略)。
AC的C++語言程式:
#include <iostream> using namespace std; int main() { int a, b, n; int numerator, decimal; cin >> a >> b >> n; numerator = a % b; decimal = numerator * 10 / b; for(int i=1; i<n; i++) { numerator = numerator * 10 % b; decimal = numerator * 10 / b; if(numerator == 0) break; } cout << decimal << endl; return 0; }
相關推薦
POJ NOI MATH-7830 求小數的某一位
總時間限制:1000ms記憶體限制: 65536kB描述 分數a/b化為小數後,小數點後第n位的數字是多少? 輸入三個正整數a,b,n,相鄰兩個數之間用單個空格隔開。0 < a < b < 100,1 <= n <= 10000。輸出一個數字
《資訊奧賽一本通》1082:求小數的某一位
1082:求小數的某一位 時間限制: 1000 ms 記憶體限制: 65536 KB 【題目描述】 分數a/b化為小數後,小數點後第n位的數字是多少? 【輸入】 三個正整數a,b,n,相鄰兩個數之間用單個空格隔開。0<a<b<100,1≤n≤10000。 【輸出】
OpenJudge_P7830 求小數的某一位
總時間限制: 1000ms 記憶體限制: 65536kB 描述 分數a/b化為小數後,小數點後第n位的數字是多少? 輸入 三個正整數a,b,n,相鄰兩個數之間用單個空格隔開。0 < a &
Noi 題庫:求小數的某一位
描述 分數a/b化為小數後,小數點後第n位的數字是多少? 輸入 三個正整數a,b,n,相鄰兩個數之間用單個空格隔開。0 < a < b < 100,1 <= n <=
求出某一天是那一年的第幾星期,比如2008年1月8日?
視頻下載 全部 style 源碼 2008年 dex class ner ont 題目7: 2008年1月8日是那年中的第幾星期?(視頻下載) (全部書籍) 本章源碼 import java.util.*;public class Test { public stat
生信(五)awk求取某一列的平均值
關鍵詞:awk awk是生信人必須要掌握的命令列工具。為啥?因為它太強大了。我們舉一個例子來說明。 假設我們有一個1000萬行的檔案,大概長這樣: 怎麼求第四列的平均數呢? Python版本 我們可以用幾行Python程式碼解決,比如這樣: 其耗時: R版
【LeetCode】Longest Common Subsequence最長公共子序列(求出某一解+LCS長度)
Longest Common Subsequence 給出兩個字串,找到最長公共子序列(LCS),返回LCS的長度。 說明 最長公共子序列的定義: • 最長公共子序列問題是在一組序列(通常2個)中找到最長公共子序列(注意:不同於子串,LCS不需要是
POJ NOI MATH-7829 神奇序列求和
總時間限制:1000ms記憶體限制: 65536kB描述 有一個序列,初始時只有兩個數x和y,之後每次操作時,在原序列的任意兩個相鄰數之間插入這兩個數的和,得到新序列。舉例說明: 初始:1 2 操作1次:1 3 2 操作2次:1 4 3 5 2 …… 問操作n次之後,得
POJ NOI MATH-7648 蓄水池水管問題
總時間限制:1000ms記憶體限制: 65536kB描述 蓄水池有甲、丙兩條進水管和乙、丁兩條排水管。 要灌滿一池水,單開甲管需要a小時,單開丙管需要c小時;要排光一池水,單開乙管需要b小時,單開丁管需要d小時。 現在池內沒有水,如果按甲乙丙丁的順序迴圈單開各水管,每次每管
求excel某一列對應的字母表示
其實就是把一個十進位制數轉換成26進位制,但是這個26進位制數沒有0,只有1-26: 兩種處理方法: #include <assert.h> #include <algorithm> #include <vector> using nam
【劍指offer】序列中的某一位數字
題目描述 數字以01234567891011121314…的格式序列化到一個字元序列中,在這個序列中,從0開始數,第5位是5,第13位是1,第19位是4,等等,請寫一個函式,求任意第n位對應的數字。 求出每一位對應的數字總和,然後判斷。注意邊界條件不好處理時,可以採用while true
java改變byte的某一位值
今天在對下位機發送指令的時候,由於下位機是根據byte裡面的某一位值來確定某個功能是否需要開啟/關閉的,因此控制下位機需要在改變某一位值的同時保留其他值不變。 這裡以改變第2位值為例。 剛開始時頭腦比較蒙,首先想到用int陣列來儲存對應byte的值,然後改變後對下的下標值來達到效
C#面試題:判斷一個數的二進位制位的某一位是否是1
判斷一個數的二進位制位的某一位是否是1. 程式碼如下: bool IsThirdBitOne(int num,int n){ //使用ToString()方法,轉換成二進位制,第二個引數只能是,2,8,16; string s=Convert.
獲取二進位制數中某一位的值
題目描述 獲取數字 num 二進位制形式第 bit 位的值。注意: 1、bit 從 1 開始 2、返回 0 或 1 3、舉例:2 的二進位制為 10,第 1 位為 0,第 2 位為 1 示例1 輸入 複製 128, 8 輸出 複製 1 我的解答: func
如何取得指定的int型資料中某一位的二進位制值(1還是0)
public static void main(String[] args) { int num = 19; String binaryString = In
採用位運算,如果想將整數的二進位制某一位翻轉可採用id^=(1
id &= ~(1<<x) :右起第x位置置為0。 //多加一個翻轉 id |= (1<<x) :右起第x位置置為1。 id ^=(1<<x) :右起第x位置置翻轉,1翻轉為0,或0翻轉為1 ----------------
C# 設定和獲取一個位元組的某一位的值的方法
自己工作中遇到需要對單位元組的高位、低位進行賦值,即一個位元組byte,想要給每一位都賦值,這個值是動態來的,是0或是1。好不容易收集到一些珍貴資料,整理一下:一、設定方法code: /// <summary> /// 設定某一位的值
C++ 設定某一位的值
#include <iomanip> #include <iostream>void bithandle(unsigned char value, unsigned char bit) { using namespace std; unsign
想要更改一個數據中的某一位的狀態時可使用異或直接操作
例如 想更改1100 1001 中的第三位 可以將其與 0000 1000進行異或操作 1100 1001 ^ 0000 1000 = 1100 0001 這在微控制器開發中應用非常常見 另外,想要將某一位置一的時候就使用或 | 1 置零使用 &0
解決POI匯入Excel時,數字精確到小數後一位的問題
今天在做匯入Excel的功能,遇到一個操蛋的問題,那就是如果excel某列為數字,例如123, POI 讀取會變成 123.0 如果遇到一些數字密碼或者手機號之類的需求,那可怎麼辦? 網上搜了一些辦法,使用後還是或多或少有點問題,於是想了一個不是方法的方法,如下程式碼片