JAVA 大数相加 POJ 1503

这个没什么好说的,就是用JAVA写,如果要用C++或C写的话,就要把数倒着存,这样当两个数位数不一样时较好操作,注意一下进位就行。很久没写过JAVA了,而且这是我第一个写的拿去OJ上跑的JAVA程序,第一次啊,然后各种状况不断,先是Compile Error,然后是Runtime Error,然后是WA,最后我对照着标程一模一样写了,才AC,真是纠结啊。

为避免大家犯和我一样的错误,我提醒一下,在JAVA里面要把类命名为Main,我写str.charAt(0) == '0',WA了,不理解,我改成str.equals("0")才AC,莫非是输入数据出现了0123这种数?

还有推荐一个网站,上面有北大各种题的JAVA标程,希望对大家有帮助,至少帮到了我啊(偷笑)

http://www.java3z.com/cwbwebhome/acm.jsp

 

View Code
 1 import java.math.BigInteger;
 2 import java.util.Scanner;
 3 
 4 public class Main{
 5     public static void main(String args[]) {
 6         BigInteger a= BigInteger.valueOf(0);
 7         BigInteger s = BigInteger.valueOf(0);
 8         String str;
 9         Scanner cin = new Scanner(System.in);
10         while (true) {            
11              str = cin.next();
12             if(str.equals("0")) break;
13             a = new BigInteger(str);
14             s = s.add(a);
15         }
16         System.out.println(s);
17     }
18 }

 




posted on 2013-04-17 01:07  allh123  阅读(178)  评论(0编辑  收藏  举报

导航