列表

详情


NC214359. 牛牛的加法

描述

牛牛经常在数学课上睡觉,所以他的数学非常烂。

别人的数学都是进位加法, 但是他的却是非进位加法,比如 7+7 = 4, 22+84 = 6

现在牛牛想考验你一下, 给你两个非常大的数,计算他们的和。

输入描述

第一行一个整数 a ( a ≥ 0 and |a| ≤ 2e5)
第二行一个整数 b ( b ≥ 0 and |b| ≤ 2e5)

输出描述

输出一个数 c , c = a + b


示例1

输入:

80
34

输出:

14

示例2

输入:

99
11

输出:

0

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

Python3 解法, 执行用时: 274ms, 内存消耗: 5668K, 提交时间: 2023-08-12 10:08:46

a=input()
b=input()
if len(a)>len(b):
    b=b.rjust(len(a),'0')
else:
    a=a.rjust(len(b),'0')
le=''
flag=0
for i in range(len(a)):
    x,y=int(a[i]),int(b[i])
    if (x+y)%10!=0 or flag:
        le+=str((x+y)%10)
        flag=1
if le=='':
    print('0')
else:
    print(le)

Java 解法, 执行用时: 1228ms, 内存消耗: 20544K, 提交时间: 2023-08-12 10:08:04

import java.util.*;

public class Main {
    public static void main(String[] args){
    	Scanner sc=new Scanner(System.in);
    	String a=sc.next();
    	String b=sc.next();
    	StringBuffer n=new StringBuffer();
    	for(int i=0;i<Math.max(a.length(), b.length());i++){
    		int t1=a.length()-i-1>=0?a.charAt(a.length()-i-1)-'0':0;
    		int t2=b.length()-i-1>=0?b.charAt(b.length()-i-1)-'0':0;
    		n.insert(0,""+(t1+t2)%10);
    	}
    	if(n.length()<=1) {
    	    System.out.println(n);
    	} else {
    		int i=0;
    		for(;i<n.length();i++){
        		if(n.charAt(i)!='0')break;
            }
            System.out.println(!n.substring(i,n.length()).equals("")?n.substring(i,n.length()):"0");
    	}
    }
}

上一题