`

poj 1503解题报告(大数相加问题)

 
阅读更多

  Slyar:说下题意。给你至多100行超大整数,以0结束输入,要求你求出这些超大整数的和。高精度加法运算,试了几种思路,感觉下面这种看起来最舒服...例如19999 + 999 + 9,看图更清晰

高精度加法

1、以字符串格式读入超大整数,然后将每一位转换成整型并逆序存放在数组中。

2、把每次读入字符串的长度存放在0号元素中(sum[i][0])。

3、将所有大整数的和存放在0号字符串中(sum[0])。

4、从0号字符串最大处向前寻找第一个不为0的元素,然后逆序输出和。

代码如下:

 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define Max 105
int sum[Max][Max];
char str[Max];


int main()
{
	int i,j,h,he,jin,line;
	for (i=0; ;i++)
	{
		gets(str);
		if(str[0]=='0'&&str[1]=='0')
			break;
		sum[i][0]=strlen(str);
		for (j=1;j<sum[i][0];j++)
		{
			sum[i][j]=sum[i][sum[i][0]-j]-'0';
		}

	}
	line=i;
	for (i=1;i<line;i++)
	{
		jin=0;
		for (j=1;j<Max-1;j++)
		{
			he=sum[0][j]+sum[i][j]+jin;
			jin=he/10;
			sum[0][j]=he%10;
		}
	}
	for (i=Max-1;sum[0][i]==0;i--);
	for (;i>=1;i--)
	{
		printf("%d",sum[0][i]);
	}
	printf("\n");
	return 0;
}

 

分享到:
评论

相关推荐

    poj 3414解题报告

    poj 3414解题报告poj 3414解题报告poj 3414解题报告poj 3414解题报告

    poj 1012解题报告

    poj 1012解题报告poj 1012解题报告poj 1012解题报告poj 1012解题报告

    poj 2329解题报告

    poj 2329解题报告poj 2329解题报告poj 2329解题报告poj 2329解题报告

    POJ1503解答,正确答案(已通过POJ)

    POJ1503解答 POJ1503解答,正确答案(已通过POJ)

    poj 1440解题报告

    poj 1440解题报告 poj 1440解题报告 poj 1440解题报告 poj 1440解题报告

    poj 3083解题报告

    poj 3083解题报告poj 3083解题报告poj 3083解题报告poj 3083解题报告

    poj 1659解题报告

    poj 1659解题报告poj 1659解题报告poj 1659解题报告poj 1659解题报告

    北大poj解题报告

    总结来说,“北大poj解题报告”是一个集算法学习、编程实践、问题解决策略为一体的宝贵资源,对于提升软件工程学生的综合素质具有极大的价值。解题报告中的案例分析、解题思路和经验分享,无疑是学习和提升编程技能...

    poj 3720解题报告

    poj 3720解题报告poj 3720解题报告poj 3720解题报告poj 3720解题报告

    acm竞赛----北大poj详细解题报告

    【ACM竞赛与北大POJ解题报告】 在编程竞赛领域,ACM(国际大学生程序设计竞赛,简称ACM/ICPC)是一项极具影响力的比赛,它挑战参赛者的算法设计、问题理解和快速编码能力。北京大学(Peking University)的在线判题...

    poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告

    poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题报告poj 解题...

    poj1691解题报告

    ### poj1691解题报告 #### 题目信息 - **题目名称**:Painting A Board - **时间限制**:1S - **内存限制**:1000K - **提交总数**:62 - **通过总数**:35 - **来源**:...

    POJ1503-Integer Inquiry

    【描述】"解题报告+AC代码"意味着这个压缩包包含了对这个问题的解决方案,即解题思路的详细阐述,以及通过了POJ系统所有测试用例的源代码。"AC"是编程竞赛中常用的术语,代表“Accepted”,表示提交的代码已经正确...

    80道POJ解题报告

    【压缩包子文件的文件名称列表】: "POJ解题报告",这个文件很可能是包含所有80道题目解题报告的文档或者多个文档的集合,可能有每个问题的题目描述、解题思路、算法分析、时间复杂度和空间复杂度的讨论,以及C++、...

    本人整理的POJ解题报告大全

    【POJ解题报告大全】是我精心整理的一份编程题解集合,主要涵盖了在Programming Online Judge(POJ)平台上遇到的250道经典题目。POJ是一个著名的在线编程竞赛平台,它为程序员提供了大量的算法练习题目,是提高编程...

    poj 2392 解题报告

    《POJ 2392解题报告:高效计算最高堆积高度》 本文将深入解析POJ 2392这个编程题目,该题目要求利用给定的不同高度、耐压性和数量的block,来确定能够堆叠出的最大高度。解决这个问题的关键在于运用排序和动态规划...

    poj 2376 解题报告

    特别是在处理诸如“Poj 2376”这样的问题时,贪心策略能够帮助我们找到最优解或近似最优解。这个问题要求我们找出最少数量的牛来清洁一段长度为`len`的地板,每头牛负责的清洁区间已知,这正好符合贪心算法的应用...

    POJ 1316解题报告

    【POJ 1316 解题报告】 本题源自北京大学举办的ACM竞赛,题号为POJ 1316,主要涉及算法设计和数组的应用。题目要求找到10000以内的所有self-number,并输出它们。Self-number是一个特殊的整数序列,它的定义是该数...

    poj2828解题报告

    这篇解题报告主要介绍了如何解决POJ2828这个编程题目。该题目涉及的数据结构是区间树(Interval Tree),这是一种用于高效处理区间查询和修改的树形数据结构。在这个问题中,我们需要根据输入的元素位置和值,构建一...

    北大ACM_POJ_解题报告

    【北大ACM_POJ_解题报告】是北京大学ACM在线评测系统POJ的解题资源集合,这个压缩包包含了对POJ平台上的各种类型ACM竞赛题目的详细解答。ACM,全称国际大学生程序设计竞赛(International Collegiate Programming ...

Global site tag (gtag.js) - Google Analytics