开胃话:每次遇到大数的计算都没来得及整理,今天觉得有必要以一道例题来总结一下了,c中一般都是用字符串来解决的,而java中就可以用BigInteger来解决了,大家可以看看下面链接的这篇博客,写的比较完善的:
https://blog.csdn.net/dongchengrong/article/details/78848399
而我主要以例题的形式呈现给大家:
题目:
代码:
import java.util.Scanner;
import java.math.BigInteger;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int a = sc.nextInt();
BigInteger sum=BigInteger.valueOf(a);
BigInteger ans = BigInteger.valueOf(a);
if(n>1){
for(int i=1;i<n;i++){
BigInteger t =sum.multiply(BigInteger.valueOf(10));
sum=t.add(BigInteger.valueOf(a));
ans=ans.add(sum);
}
}
System.out.println(ans);
}
}
关键在于把大数的表现形式弄清楚就问题不大了,编程愉快!