做题要学会冷静分析,除了模拟之外,很多题目的答案可以通过分析推导得到基于数学规律的表达式,节省时间开销。

本题中: N=1结果为1, N=2结果为2, N=3结果为3, N=4结果为5, N=5结果为8, N=6结果为13......通过简单分析推导可知规律相似于斐波那契数列


#include<stdio.h>
int main(){
    int i=0,n,f1=1,f2=2,fabri=0;
    while(~scanf("%d",&n)){
        if(n==1){
            printf("1\n");
            break;
        }
         if(n==2){
            printf("2\n");
            break;
        }
        else 
        {
           for(i=n;i>2;i--){
               fabri=f1+f2;
               f1=f2;
               f2=fabri;
           }
            printf("%d\n",fabri);
        }
    }
}