思路:首先看到这种题自然而然想起了找规律,仔细观察不难发现,这是一道简单的斐波那契数列的题目。用数组方法比递归好些,递归在循环过程中比较费时间和空间。
提示:在用数组调用时,从1-50的路线结果是要超过int类型的字节长度的,要调用long类型数组来加长
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner v=new Scanner(System.in);
int N=v.nextInt();
while(v.hasNext())
{
int a=v.nextInt();
int b=v.nextInt();
long[] arr=new long[51];
arr[1]=1;arr[2]=2;arr[3]=3;
if(a>0&&a<b&&b<50)
{
for(int i=3;i<arr.length;i++)
arr[i]=arr[i-1]+arr[i-2];
}
System.out.println(arr[b-a]);
}
}
}
若有错误,还请指正;