给你两个数 a 和 b , 请你计算 a b 之间所有数的数字之和

题目描述:
给你两个数 a 和 b , 请你计算 a b 之间所有数的数字之和

输入:
多组测试数据,每个数据仅一行
一行有两个数 a,b (0 <= a,b <= 2e9 )
以EOF结束输入

输出:
a b 之间的数的数字之和

样例输入:
0 3
10 14
0 0

样例输出:
6
15
0

其它信息:
Contest 14 比赛题
题目提供:ailyanlu
提示:第二个例子中
a = 10, b = 14 , ans = (1+0)+(1+1)+(1+2)+(1+3)+(1+4) = 15

难度:Hard

from: http://yzfy.org/dis/listpost.php?tid=810&extra=page%3D1

 

 

 #include long long sum(long long num) { long long sums = 0; //printf("/t%lld is ", num); while(num) { sums += num%10; num = num/10; } //printf("%lld/n", sums); return sums; } long long add(long long a, long long b) { long long i, adds = 0; if(a > b){ i = a; a = b; b = i; } for(i=0; i<=(b-a); i++) adds += sum(a+i); return adds; } int main(void) { long long a, b; while( scanf("%lld%lld", &a, &b) != EOF ) printf("%I64d/n", add(a, b)); return 0; }  

你可能感兴趣的:(算法笔记)