- 列表项目
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
while(in.hasNext()){
int A=in.nextInt();
int B=in.nextInt();
int n=in.nextInt();
if(A>=1 && A<=1000 && B>=1 && B<=1000 && n>=1 && n<=100000000){
if(A==0 && B==0 && n==0){
break;
}
int a[]=new int[n];
if(n==1){
a[0]=1;
}
if(n==2){
a[0]=1;
a[1]=1;
}
if(n>2){
a[0]=1;
a[1]=1;
for(int i=2;i<n;i++){
a[i]=(A * a[i-1] + B * a[i-2])%7;
}
}
System.out.println(a[n-1]);
}
}
}
我这样写,显示错误。
不知道哪里错了。
我这样写对的,不知道上一种方法哪里错了
报啥错你看了么?
显示错误
这样的问题描述,如果是问你自己,你该如何回答?推测是OOM了 ,算法没啥问题,但是如果
n=100000000
,就要分将近400M内存给new int[n];
一般的ACM平台,不会给这么大内存吧