本文共 915 字,大约阅读时间需要 3 分钟。
#include #include #include using namespace std; void prob1023() { string num; cin >> num; string num0 = num; int flag = 0; for (auto iter = num.rbegin(); iter != num.rend(); ++iter) { int r = *iter - '0' + *iter - '0' + flag; if (r > 9) { flag = 1; r = r - 10; } else { flag = 0; } *iter = r + '0'; } if (flag == 1) { num.insert(num.begin(), '1'); } map record0; map record; for (auto iter = num0.begin(); iter != num0.end(); ++iter) { if (record0.find(*iter) == record0.end()) { record0[*iter] = 1; } else { ++record0[*iter]; } } for (auto iter = num.begin(); iter != num.end(); ++iter) { if (record.find(*iter) == record.end()) { record[*iter] = 1; } else { ++record[*iter]; } } if (record0 == record) { cout << "Yes\n"; } else { cout << "No\n"; } cout << num; }
转载于:https://www.cnblogs.com/paralysis/p/10662216.html