
比赛的时候刷了一点小聪明,发现这个数列是卢卡斯数,一个递推关系像斐波拉契数列的数列;
我不知道怎么证明,如果哪天无意中会证了再加上;
这题唯一的难点就是大数运算;
直接用JAVA
代码:
import java.io.PrintWriter;
import java.math.BigInteger;
import java.util.Scanner; public class Main {
Scanner scan=new Scanner(System.in);
PrintWriter out=new PrintWriter(System.out);
BigInteger c[]=new BigInteger[10005];
int n; void getc(){
c[3]=BigInteger.valueOf(4);
c[4]=BigInteger.valueOf(7);
for(int i=5;i<=10001;i++)
c[i]=c[i-2].add(c[i-1]);
} void run(){
getc();
while(scan.hasNextInt()){
n=scan.nextInt();
out.println(c[n]);
out.flush();
}
}
public static void main(String[] args) {
new Main().run();
}
}