HDU ACM 3443
时间:2010-10-27 来源:酷行天下
123(1 + 10 + 100 + 1000) = 136653
所以Shift Number 是1111……的整数倍即结果
#include<iostream> #include<cmath> using namespace std; int main() { long long n, m, sum; while(cin >> n, n){ int count = 0; m = n; while(m) { count++; m /= 10; } sum = (long long)(pow(10.0, 1.0 * count) - 1) / 9;//1 + 10 + 100 + 1000 + 10000……的公式 while(n % sum != 0){ sum /= 10; } cout << n / sum << endl; } return 0; }
相关阅读 更多 +