超大数相加:
输入:
n//
n个数
输出:
结果
输入:
n//
n个数
输出:
结果
- #include <vector>
- #include <string>
- #include <iostream>
- #include <cstdio>
- #include <cstdlib>
- using namespace std;
- int main(int argc, char* argv[])
- {
- //uint64 n;
- int n;
- while (cin >> n)
- {
- int s;
- int sum[100];
- memset(sum, 0, 100 * sizeof(int));
- for (int i = 0; i < n; i++) {
- string tt;
- cin >> tt;
- s = 0;
- int j;
- for (j = 0; j < tt.size(); j++)
- {
- s = sum[j] + tt[tt.size() - j - 1] + s - '0';// +
- sum[j] = s % 10;
- s /= 10;
- }
- for (; j < 100; j++)
- {
- s = sum[j] + s;
- sum[j] = s % 10;
- s /= 10;
- }
- }
- bool tag = false;
- for (int k = 99; k >= 0; k--)
- {
- if (!tag && (sum[k] == 0))
- continue;
- cout << sum[k];
- tag = true;
- }
- cout << endl;
- }
- }