标签:
Multiplying by Rotation |
Warning: Not all numbers in this problem are decimal numbers!
Multiplication of natural numbers in general is a cumbersome operation. In some cases however the product can be obtained by moving the last digit to the front.
Example: 179487 * 4 = 717948
Of course this property depends on the numbersystem you use, in the above example we used the decimal representation. In base 9 we have a shorter example:
17 * 4 = 71 (base 9)
as (9 * 1 + 7) * 4 = 7 * 9 + 1
10 7 4 9 7 4 17 14 12
6 2 4
#include<iostream> #include<algorithm> #include<stdio.h> #include<string.h> #include<stdlib.h> using namespace std; int main() { int a,b,c; while(cin >> a >> b >> c) { int count = 0; int sum = 0; int pb = b; int p = 0; while(1) { count++; sum = b * c + p; b = sum % a; p = sum / a; if(sum == pb) { break; } } cout << count << endl; } return 0; }
标签:
原文地址:http://blog.csdn.net/yeguxin/article/details/42836473