着重考虑数据类型,边界值
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
long a = 1L, b = 1L, result, sum = 0L;
// 如果为前2项则将结果设为1
if (n == 1 || n == 2) {
result = 1L;
} else {
while (n > 2) {
sum = a + b;
a = b;
b = sum % 10007; // 取sum的模数
n--;
}
result = sum % 10007; // 再次取sum的模数,防止最后一次a+b的值超出10007
}
// 输出结果
System.out.println(result);
}
}