AcWing 791. 高精度加法
原题链接
简单
作者:
将情怀讲泛滥的恶果
,
2021-05-18 15:25:16
,
所有人可见
,
阅读 287
java
import java.io.*;
import java.util.*;
public class Main{
public static void main(String[] args) throws IOException{
InputStreamReader in = new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(in);
String a = br.readLine();
String b = br.readLine();
ArrayList<Character> A = new ArrayList<Character>();
ArrayList<Character> B = new ArrayList<Character>();
for (int i = a.length() - 1; i >= 0; i--) {
A.add(a.charAt(i));
}
for (int i = b.length() - 1; i >= 0; i--) {
B.add(b.charAt(i));
}
ArrayList<Character> c = ADD(A, B);
for (int i = c.size() - 1; i >= 0; i--) {
System.out.print(c.get(i));
}
}
public static ArrayList<Character> ADD(ArrayList<Character> a, ArrayList<Character> b) {
ArrayList<Character> c = new ArrayList<>();
int t = 0;
int i = 0;
while (i < a.size() || i < b.size()) {
if (i < a.size()) t += (a.get(i) - '0');
if (i < b.size()) t += (b.get(i) - '0');
int temp = ((int) t % 10) + '0';
c.add((char) (temp));
t = t / 10;
i += 1;
}
if (t > 0) c.add('1');
return c;
}
}