水题,刷一下找找感觉,省赛友情队也得认真对待啊
这题提交以后立马想到 答案串完全没必要用字符串,可以每位都加和,不做进位处理,全部输入完后在进位,时间上可能会快点
#include<iostream> #include<cstdio> #include<cstring> using namespace std; const int maxn = 200; char s[maxn]; int main() { memset(s, 0, sizeof s); char t[maxn]; while(scanf("%s", t)) { if(strcmp(t, "0") == 0) break; int h = 0, sum = 0; int len = strlen(s); int i, j; for(j = 0, i = strlen(t) - 1; i >= 0 || j < len; --i, ++j) { if(i >= 0) sum += t[i] - '0'; if(j < len) sum += s[j] - '0'; sum += h; h = sum / 10; s[j] = sum % 10 + '0'; sum = 0; } if(h) s[j] = 1 + '0'; } int len = strlen(s); for(int i = len - 1; i >= 0; --i) printf("%c", s[i]); return 0; }