首页 > 编程语言 >三种语言实现高精度加法(C++/Python/Java)

三种语言实现高精度加法(C++/Python/Java)

时间:2024-07-28 21:40:46浏览次数:20  
标签:BigInteger Java Python back C++ int vector reader size

题目

给定两个正整数(不含前导 00),计算它们的和。

1≤整数长度≤100000

C++

#include <bits/stdc++.h>

using namespace std;

vector<int> add(vector<int> & A, vector<int> & B)
{
    if(A.size() < B.size()) return add(B, A);
    vector<int> C;
    int t = 0;
    for(int i = 0; i < A.size(); i++)
    {
        t += A[i];
        if(i < B.size())    t += B[i];
        C.push_back(t % 10);
        t /= 10;
    }
    if(t) C.push_back(t);
    return C;
}

int main()
{
    string a,b;
    cin >> a >> b;
    vector<int> A, B;
    for(int i = a.length()-1; i >= 0; i--) A.push_back(a[i]-'0');
    for(int i = b.length()-1; i >= 0; i--) B.push_back(b[i]-'0');
    auto C = add(A, B);
    for(int i = C.size()-1; i >= 0; i--)
        cout << C[i] ;
}

Python

a = int(input())
b = int(input())
print(a+b)

Java

import java.math.BigInteger;
import java.io.*;

public class Main{
    public static void main(String []args) throws IOException{
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        BigInteger a = new BigInteger(reader.readLine());
        BigInteger b = new BigInteger(reader.readLine());
        System.out.println(a.add(b));
        reader.close();
    }
}

标签:BigInteger,Java,Python,back,C++,int,vector,reader,size
From: https://www.cnblogs.com/fang0218/p/18328906

相关文章

  • JavaSE基础知识分享(一)
    写在前面今天要讲的是JAVA数据类型、运算符、选择语句、循环语句部分的基础知识,来看看你会不会!基础知识1Java语言规定标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能是数字。Java中整型变量有byte、short、int和long四种,不同类型的整数变量在内存中分配的......
  • Java如何通过日志排查问题
    问题:大家有没有遇到过这样一种场景,在一个接口或者方法当中,业务逻辑很复杂,方法嵌套调用层级很深,此时要定位业务流程的走向,是不是要在每个方法中打日志,而这些日志是不串联的,比如,一个接口调用下来,程序没有报错,但没有按预期执行,怎么排查,就得翻这个方法调用时的每一条记录日志,而代......
  • JavaScript图片轮播
    代码在文章最后面(含图片URL)实现功能按向左按钮图片显示上一张按向右按钮图片显示下一张每隔2000毫秒显示下一张图底部三个圆点显示当前的图片的编号实现流程初始化图片数组创建一个包含图片URL的数组,轮播时会通过这个数组来切换图片。创建当前索引变量 这个变量用来追踪......
  • 利用python和工具变量法精确估计价格对销量的影响:解决内生性问题的实战指南
    目录1.引言2.工具变量法简介3.案例背景3.1背景信息3.2具体行动3.3数据收集4.实现思路5.示例代码5.1构建测试数据5.2进行工具变量法分析5.2.1一阶段回归5.2.2二阶段回归5.2.3验证工具变量5.3结论与应用5.3.1结论5.3.2实际应用6下一步思考6.1进一步验证和......
  • 互联网大裁员背景下C++程序员该如何突围?
    一、前言              近期遇到许多正在找工作的小伙伴感叹今年工作难找,往年互联网上升期的时候,北京互联网行业不光工资给的高,而且坑也多,就拿互联网前几大语言来说,20年北京区Java招聘岗位10万+,目前只有不到1万+,20年北京区python招聘岗位3万+,2024年4月份不到5......
  • C++从入门到起飞之——内存管理(万字详解) 全方位剖析!
    ......
  • 浅谈简单的数据结构1(树状数组 、线段树)(c++)
    *_*课间休息后的知识点轰炸树状数组引入给定长为n的序列a,q次操作,每次查询一段区间的和,或修改一个数的权值。1≤n,q≤5×10^5,0≤a_i≤10^9。分析如果没有修改操作,这是一道非常简单的前缀和题。假如我们修改前缀和数组,查询就还是O(1)的,是否可行呢?当然不行。考虑......
  • 计算机毕业设计-基于Java+SSM架构的校园美食交流系统项目开发实战(附源码+论文)
    大家好!我是程序员一帆,感谢您阅读本文,欢迎一键三连哦。......
  • 浅谈图论中树及其相关知识点(树的遍历、直径、最近公共祖先)(c++)
    目录前言一.关于树二.树的遍历(一)遍历方式常见遍历1.DFS遍历2.BFS遍历二叉树遍历1.先序遍历2.中序遍历3.后序遍历(二)例题讲解1.P1030[NOIP2001普及组]求先序排列思路AC代码 2.P5908猫猫和企鹅思路AC代码  3.P1395会议思路AC代码三.树的直径(一)定......
  • Java中的基本数据类型和引用数据类型
    目录前提介绍数据类型的作用数据类型的分类(1)基本数据类型(四类八种)(2)引用数据类型类(Class)接口(Interface)数组(Array)字符串(String)枚举(Enum)前提介绍java是一种强类型语言,这就意味着在编译的时候,所有的变量的数据类型都必须明确指定,并且类型系统会强制执行类型检查数据类型的作用在ja......