当前位置: 首页 > article >正文

大整数加法(信息学奥赛一本通-1168)

【题目描述】

求两个不超过200位的非负整数的和。

【输入】

有两行,每行是一个不超过200位的非负整数,可能有多余的前导0。

【输出】

一行,即相加后的结果。结果里不能有多余的前导0,即如果结果是342,那么就不能输出为0342。

【输入样例】

22222222222222222222
33333333333333333333

【输出样例】

55555555555555555555

【题解代码】

#include<bits/stdc++.h>
using namespace std;

const int N = 210;
int a[N], b[N], c[N];

int main()
{
	string s1, s2; cin >> s1 >> s2;
	int aindex = 1, bindex = 1;
	int la = 1, lb = 1, lc = 1;
	for (int i = s1.size(); i >= 0; i--)
	{
		a[aindex++] = s1[i] - '0';
		if (s1[i] == '0') la = aindex - 1;
	}
	for (int i = s2.size(); i >= 0; i--)
	{
		b[bindex] = s2[i] - '0';
		if (s2[i] == '0') lb = bindex - 1;
	}

	lc = max(aindex, bindex) + 1;
	for (int i = 1; i <= lc; i++)
	{
		c[i] += a[i] + b[i];
		c[i + 1] = c[i] / 10;
		c[i] %= 10;
	}

	while (!c[lc] && lc > 1) lc--;
	for (int i = lc; i >= 1; i--)cout << c[i];

	return 0;
}

http://www.kler.cn/a/578923.html

相关文章:

  • NoSQL数据库系统Cassandra学习笔记
  • Prompt engineering设计原则
  • 力扣HOT100之哈希:128. 最长连续序列
  • 学习LED驱动知识(二)
  • 神经网络中梯度计算求和公式求导问题
  • 【MySQL】索引(页目录、B+树)
  • Go学习笔记:go 操作mysql和Redis
  • OkHttp:工作原理 拦截器链深度解析
  • Git基础之基础概念
  • 消息队列MQ(RabbitMQ)
  • 2025-3-9哈弗曼树
  • OPENGLPG第九版学习 -颜色、像素和片元 PART1
  • python flask
  • 跨越时空的对话:图灵与GPT-4聊AI的前世今生
  • 在MATLAB环境中,对矩阵拼接(Matrix Concatenation)的测试
  • 【 <一> 炼丹初探:JavaWeb 的起源与基础】之 JSP 中的内置对象:request、response、session 的使用示例
  • JVM 的OOM问题
  • Hadoop的运行模式
  • VTK笔记- 3D Widget类 vtkSplineWidget 样条部件
  • MySQL 数据归档自动化:Python + pt-archiver 打造高效运维利器