杭电Hdu 1877 又一版 A+B

遇到的问题有边界值问题,像输入 2 0 0这样的数的处理,还有就是和要定义成long型

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;


public class Hdu1877 {
static List list=new ArrayList();
public static void main(String[] args){
 Scanner sc=new Scanner (System.in);
 
 while(sc.hasNext()){
 int m=sc.nextInt(); //进制
 if(m==0) break;
 int a=sc.nextInt();
 int b=sc.nextInt();
 long c=(long)a+b;
 octonary(c,m);
 for(int i=0;i   
  System.out.print(list.get(list.size()-1-i));
  
 }
 System.out.println();
 list.clear();
 }
}
static void  octonary(long x,int m){
 long t=0; //记录余数
 if(x==0) System.out.print("0");
 while(x!=0){
  t=x%m;
  x=x/m;
  list.add(t);
 }
 
}
}

你可能感兴趣的:(简单经典题)