#MNJ09C. [J组模拟赛9] 徐老师的加法进位

[J组模拟赛9] 徐老师的加法进位

文件读写

  • 输入文件add.in
  • 输出文件add.out

限制

  • 1000ms
  • 512MB

题目描述

徐老师最近在复习竖式加法,这是大家从小最早学习运算时学的计算方法

  1 2 3
+ 4 5 6
--------
  5 7 9

而有时候计算过程中会碰到进位运算,比如 101+909101 + 909 需要进位 22 次

    1 0 1
+   9 0 9
----------
  1 0 1 0

甚至 1+9991 + 999 可能出现连续进位,一共进位 33 次

        1
+   9 9 9
----------
  1 0 0 0

现在徐老师突发奇想,他写下了 nn 个整数分别为 aia_i,他想知道,执行以下代码,运算结果会是多少?

int calc(int x, int y){
	return (x + y 过程中的进位次数)
}

for (int i = 1; i <= n; ++i){
	for (int j = i + 1; j <= n; ++j){
		ans += calc(a[i], a[j])
	}
}

cout << ans << endl;

输入格式

输入第一行包含一个整数 nn 表示数字个数

输入第二行包含 nn 个整数 a1,a2…ana_1, a_2 \dots a_n,用空格隔开

输出格式

输出一行包含一个整数,表示上述代码运行的结果

数据范围

对于 10%10\% 的数据满足 n≤100n \leq 100,0≤ai≤90 \le a_i \le 9。

对于另外 20%20\% 的数据满足n≤1000n \leq 1000,0≤ai≤1090 \le a_i \le 10^9。

对于另外 30%30\% 的数据,n≤100000n \leq 100000,0≤ai≤10000 \le a_i \le 1000。

对于 100%100\% 的数据,1≤n≤100000,0≤ai≤1091 \leq n \leq 100000, 0 \leq a_i \leq 10^9。

3
1 9 99
5

样例解释1

1+91 + 9 进位了 11 次 1+991 + 99 进位了 22 次 9+999 + 99 进位了 22 次 所以一共进位了 55 次

20
28 3 42 32 26 24 98 25 96 22 91 89 55 18 10 50 24 45 31 76
156
难度 未评定
通过率 100%
尝试 1
通过 1
ID
3719
类型
传统题
Time Limit
1000ms
Memory Limit
512MiB
上传者