1 条题解
-
0
关键数学性质
-
3的倍数判定规则:
- 一个数是3的倍数当且仅当它的各位数字之和是3的倍数
-
拼接操作的性质:
- 数字拼接不影响数字和的模3性质
- 例如:拼接"12"和"3"得到"123"或"312",数字和都是1+2+3=6
-
重要结论:
- 无论数字以什么顺序拼接,所有数字的数字和总是不变的
- 因此,只需要判断所有数字的数字和是否能被3整除
整体思路
直接计算所有数字的数字和,然后判断是否能被3整除
#include<bits/stdc++.h> using namespace std; void solve() { int n; cin >> n; int sum = 0; while (n--) { string s; cin >> s; for (int i = 0; i < s.size(); i++) { sum += s[i] - '0'; // 累加每个数字字符的值 } } if (sum % 3 == 0) { cout << "YES\n"; } else { cout << "NO\n"; } } int main() { int t = 1; while (t--) { solve(); } return 0; } -
信息
- ID
- 582
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 4
- 已通过
- 1
- 上传者