标签:style blog color 使用 ar strong for div sp
1,思路
大数相加,若直接使用int,或者long都会超出长度,因此考虑使用String存储。
2,代码
public class LargeNumAdd { public static void main(String[] args) { String sum = "0"; for (int i = 1; i <= 2009; i++) { String temp = getStr(i); sum = getSum(sum, temp); } System.out.println("sum: " + sum); } public static String getSum(String a, String b) { if (a.length() > b.length()) { for (int i = b.length(); i < a.length(); i++) { b = ‘0‘ + b; } } else { for (int i = a.length(); i < b.length(); i++) { a = ‘0‘ + a; } } char array1[] = a.toCharArray(); char array2[] = b.toCharArray(); String sum = ""; int carrayIn = 0; for (int i = a.length() - 1; i >= 0; i--) { sum = getRemain(array1[i], array2[i], carrayIn) + sum; carrayIn = getCarry(array1[i], array2[i], carrayIn); } return sum; } public static String getRemain(char a, char b, int carrayIn) { int sum = (a - ‘0‘) + (b - ‘0‘) + carrayIn; String rem = sum % 10 + ""; return rem; } private static int getCarry(char a, char b, int carryIn) { int sum = (a - ‘0‘) + (b - ‘0‘) + carryIn; int carry = sum / 10; return carry; } public static String getStr(int N) { String s = ""; for (int i = 0; i < N; i++) { s += "1"; } return s; } }
求sum=1+111+1111+........+1....111 .
标签:style blog color 使用 ar strong for div sp
原文地址:http://www.cnblogs.com/qianwen/p/3983583.html