c++ 超长整数加法 高精度加法
c++ 超长整数加法 高精度加法
实现思路
- 不能直接使用加法,因为int和long long都已超出最大数据表示范围
 - 数据读入采用string类型,读入后将数据的每一位存储到vector中
 - vector存储时数字的高位要存在vector的末尾,因为这样如果有进位,可以快速push_back
 - string转vector,注意减‘0’
 
打卡代码
#include<bits/stdc++.h>
using namespace std;
string s1, s2;
vector<int> a, b;
vector<int> add(vector<int> a, vector<int> b) {
    vector<int> c;
    int t;
    for (int i = 0; i < a.size() || i < b.size(); i++) {
        if (i < a.size()) t += a[i];
        if (i < b.size()) t += b[i];
        c.push_back(t % 10);
        t /= 10;
    }
    if (t) c.push_back(1);
    return c;
}
int main() {
    cin >> s1 >> s2;
    for (int i = s1.size() - 1; i >= 0; i--) a.push_back(s1[i] - '0');
    for (int i = s2.size() - 1; i >= 0; i--) b.push_back(s2[i] - '0');
    vector<int> c = add(a, b);
    for (int i = c.size() - 1; i >= 0; i--) {
        cout << c[i];
    }
    return 0;
}
												
											c++ 超长整数加法 高精度加法的更多相关文章
- c++ 超长整数乘法 高精度乘法
		
c++ 超长整数乘法 高精度乘法 解题思路 参考加法和减法解题思路 乘法不是一位一位的按照手算的方式进行计算,而是用循环用一个数的某一位去乘另外一个数 打卡代码 #include<bits/st ...
 - c++ 超长整数减法 高精度减法
		
c++ 超长整数减法 高精度减法 实现思路 和加法类似,设置临时变量记录借位 当对应位数相减得到的结果大于等于0时,该位数字为本身值,否则需要加上借位的10.则\(t=(t+10)%10\) 打卡代码 ...
 - LeetCode 第二题 Add Two Numbers 大整数加法 高精度加法 链表
		
题意 You are given two non-empty linked lists representing two non-negative integers. The digits are s ...
 - 用c++实现高精度加法
		
c++实习高精度加法 最近遇到一个c++实现高精度加法的问题,高精度问题往往十复杂但发现其中的规律后发现并没有那么复杂,这里我实现了一个整数的高精度加法,主要需要注意以下几点: 1:将所需输入的数据以 ...
 - java算法  蓝桥杯  高精度加法
		
问题描述 在C/C++语言中,整型所能表示的范围一般为-231到231(大约21亿),即使long long型,一般也只能表示到-263到263.要想计算更加规模的数,就要用软件来扩展了,比如用数组或 ...
 - POJ 3181 Dollar Dayz(全然背包+简单高精度加法)
		
POJ 3181 Dollar Dayz(全然背包+简单高精度加法) id=3181">http://poj.org/problem?id=3181 题意: 给你K种硬币,每种硬币各自 ...
 - SCAU1143 多少个Fibonacci数--大菲波数【杭电-HDOJ-1715】--高精度加法--Fibonacci数---大数比较
		
/*******对读者说(哈哈如果有人看的话23333)哈哈大杰是华农的19级软件工程新手,才疏学浅但是秉着校科联的那句“主动才会有故事”还是大胆的做了一下建一个卑微博客的尝试,想法自己之后学到东西都 ...
 - Java实现 蓝桥杯VIP 基础练习 高精度加法
		
java算法 蓝桥杯 高精度加法 问题描述 在C/C++语言中,整型所能表示的范围一般为-231到231(大约21亿),即使long long型,一般也只能表示到-263到263.要想计算更加规模的数 ...
 - NEFU 2016省赛演练一 F题  (高精度加法)
		
Function1 Problem:F Time Limit:1000ms Memory Limit:65535K Description You know that huicpc0838 has b ...
 
随机推荐
- lunix或者centos服务器下如何下载自己在github上面的项目代码
			
1.在github找到项目压缩包下载地址 打开自己的github主页找到需要下载的项目首页,如图所示,找到zip下载地址(ps:如何找这个地址我就不多说了,了解过一点html的同学肯定很容易可以找到) ...
 - css实现超出部分显示省略号
			
/* 显示一行,省略号 */ white-space: nowrap; text-overflow: ellipsis; overflow: hidden; wo ...
 - 微服务架构学习与思考(09):分布式链路追踪系统-dapper论文学习
			
一.技术产生的背景 1.1 背景 先来了解一下分布式链路追踪技术产生的背景. 在现在这个发达的互联网世界,互联网的规模越来越大,比如 google 的搜索,Netflix 的视频流直播,淘宝的购物等. ...
 - docker容器与虚拟机区别
 - 利用 onnxruntime 库同时推理多个模型的效率研究
			
1. 背景 需求:针对视频形式的数据输入,对每一帧图像,有多个神经网络模型需要进行推理并获得预测结果.如何让整个推理过程更加高效,尝试了几种不同的方案. 硬件:单显卡主机. 2. 方案 由于存在多个模 ...
 - IDEA-2020版本 Gradle项目控制台输出乱码
			
点击Help->Edit custom vm options 加入下面这一行 -Dfile.encoding=utf-8 最后当然要重启idea了
 - 一篇文章带你搞懂InnoDB的索引|结合样例
			
关注公众号[程序员白泽],带你走进一个不一样的程序员/学生党 前言 前阵子面试的时候,在第三面问到了MySQL索引相关的知识点,并且给出了一些SQL语句分析索引的执行情况.所以今天这篇文章给大家讲讲索 ...
 - Go能实现AOP吗?
			
hello~大家好,我是小楼,今天分享的话题是Go是否能实现AOP? 背景 写Java的同学来写Go就特别喜欢将两者进行对比,就经常看到技术群里讨论,比如Go能不能实现Java那样的AOP啊?Go写个 ...
 - 震惊!<string.h>、<cstring>和<string>竟然可以这么用!
			
为什么有这么多string相关的头文件呢,小编秦始皇今天带大家看一下: 1.[string.h] 定义如下:"C语言标准库中一个常用的头文件,在使用到字符数组时需要使用.[strin ...
 - RAID5加热备盘
			
RAID 5加热备盘 RAID 10磁盘阵列中最多允许50%的硬盘设备发生故障,但是存在这样一种极端情况,即同一RAID 1磁盘阵列中的硬盘设备若全部损坏,也会导致数据丢失.换句话说,在RAID 10 ...