/********************************* * 日期:2013-1-26 * 作者:SJF0115 * 题号: 九度1051 * 题目:数字阶梯求和 * 来源:http://ac.jobdu.com/problem.php?pid=1051 * 结果:AC * 题意: * 总结:n位数相加用n+1位数组存储,留出一位用作进位用。 **********************************/ #include<stdio.h> #include<stdlib.h> int main() { int a,n,i,j; //freopen("C:\\Users\\SJF\\Desktop\\acm.txt","r",stdin); while(scanf("%d %d",&a,&n)!=EOF) { int sum[101] = {0}; int c; for(i = 1;i <= n;i++){ c = 0;//进位 for(j = n;j >= n-i+1;j--){ if(sum[j] + a + c >= 10){ sum[j] = sum[j] + a + c - 10; c = 1; } else{ sum[j] = sum[j] + a + c; c = 0; } } if(c == 1){ sum[j] = sum[j] + 1; } } //输出 for(i = 0;i <= n;i++){ if(i == 0&&sum[i] == 0){ continue; } printf("%d",sum[i]); } printf("\n"); } return 0; }
作者:SJF0115 发表于2013-1-26 20:16:11 原文链接
阅读:33 评论:0 查看评论