HDU 2117 Just a Numble

http://acm.hdu.edu.cn/showproblem.php?pid=2117

Problem Description
Now give you two integers n m, you just tell me the m-th number after radix point in 1/n,for example n=4,the first numble after point is 2,the second is 5,and all 0 followed
 
Input
Each line of input will contain a pair of integers for n and m(1<=n<=10^7,1<=m<=10^5)
 
Output
For each line of input, your program should print a numble on a line,according to the above rules
 
Sample Input
4 2
5 7
123 123
 
Sample Output
5
0
8
 
时间复杂度:$O(m)$
代码:
#include <bits/stdc++.h>
using namespace std;

int main() {
    int n, m, sum, k;
    while(~scanf("%d%d", &n, &m)) {
        sum = 1;
        for(int i = 0; i < m; i ++) {
            sum = sum * 10;
            k = sum / n;
            sum = sum % n;
        }
        printf("%d
",k % 10);
    }
    return 0;
}

  

原文地址:https://www.cnblogs.com/zlrrrr/p/9630434.html