1 条题解
-
0
G2016 [GESP202412 二级] 数位和 题解
知识点:数字处理、数位和、最值。
解题思路
每个数分别累加各位数字,更新最大数位和。
为什么正确
处理完前若干数后,ans保存这些数的最大数位和,逐个更新最终覆盖全部输入。
易错点
每读一个新数要把当前sum清零,答案取最大而非总和。
复杂度
时间O(总位数),空间O(单个数字位数)。
参考代码(C++17)
#include<bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int n,ans=0; cin>>n; while(n--) { string s; cin>>s; int sum=0; for(char c:s)sum+=c-'0'; ans=max(ans,sum); } cout<<ans; }说明
本题解为配套教学整理,非官方题解。复杂度按本页参考实现计算,题库使用6个自行生成的测试点。
- 1