一、题目
输入两个非负 10 进制整数 A 和 B (≤230−1),输出 A+B 的 D (1<D≤10)进制数。
输入格式:
输入在一行中依次给出 3 个整数 A、B 和 D。
输出格式:
输出 A+B 的 D 进制数。
输入样例:
123 456 8
输出样例:
1103
二、解析
10进制转n[2, 10]进制。
三、代码
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
long a = input.nextLong();
long b = input.nextLong();
int d = input.nextInt();
ArrayList<Integer> list = decimalToNHexadecimal((a+b), d);
if(list.size() == 0){
System.out.print(0);
return;
}
for (int i = list.size()-1; i >=0 ; i--)
System.out.print(list.get(i));
}
public static ArrayList<Integer> decimalToNHexadecimal(long num, int d){
ArrayList<Integer> list = new ArrayList<>();
while(num != 0){
list.add((int)(num%d));
num /= d;
}
return list;
}
}
标签:PAT,进制,1022,int,ArrayList,list,input,java
From: https://www.cnblogs.com/langweixianszu/p/17133674.html