题解 | 大整数的因子
#include<iostream> using namespace std; char yu(string n2, int k) { int z1, c1 = 0; for (int i = 0; i < n2.size(); i++) { z1 = n2[i] - '0' + c1 * 10; c1 = z1 % k; z1 = z1 / k; } return c1 + '0'; } int main() { string c; while (cin >> c) { if (c == "-1")break; int num = 0; char p; for (int k = 2; k <= 9; k++) { p = yu(c, k); if (p == '0') { num++; cout << k << " "; } } if (num == 0)cout << "none"; cout << endl; } }