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

大整数加法(信息学奥赛一本通-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.dtcms.com/a/58983.html

相关文章:

  • 锂电池组的串数设计研究
  • QOJ9700 Ying’s Cup(拉格朗日插值优化卷积,背包,二项式反演)
  • c++ 嵌入汇编的方式实现int型自增
  • Javascript ajax
  • Compose笔记(八)--权限
  • 《Operating System Concepts》阅读笔记:p208-p227
  • 更新vscode ,将c++11更新到c++20
  • springboot旅游管理系统设计与实现(代码+数据库+LW)
  • openharmory-鸿蒙生态设备之间文件互传发现、接入认证和文件传输
  • 通义千问本地配置并实现微调
  • 手写Tomcat:实现基本功能
  • FastAPI Cookie 和 Header 参数完全指南:从基础到高级实战 [特殊字符]
  • MyBatis-Plus 注解大全
  • Java字符串拼接的底层原理与性能优化
  • C++类和对象入门(三)
  • uniapp uniCloud引发的血案(switchTab: Missing required args: “url“)!!!!!!!!!!
  • ESP8266TCP客户端(单连接TCP Client)
  • java项目springboot 项目启动不了解决方案
  • 线性表相关代码(顺序表+单链表)
  • Python深度学习算法介绍
  • 基于SpringBoot的历史馆藏系统设计与实现(源码+SQL脚本+LW+部署讲解等)
  • JDK 的 SPI 和 Dubbo 的 SPI
  • vector模板类的模拟实现
  • JVM垃圾回收面试题及原理
  • 代码随想录二刷|图论4
  • 实现一个日期类(类和对象实践项目)
  • 使用 potrace.js实现图像矢量化教程
  • Windows控制台函数:标准输入输出流交互函数GetStdHandle()
  • 基于Spring Boot的城市垃圾分类管理系统的设计与实现(LW+源码+讲解)
  • 使用 Python 开发的简单招聘信息采集系统