首页 > 其他 > 详细

ZOJ 3702 Fibonacci

时间:2014-04-09 23:28:41      阅读:736      评论:0      收藏:0      [点我收藏+]

解题思路:

找规律,不难的,打表

坑的地方在于题目限定条件

and the seed value for G(1) is a random integer t, (t>=1)

虽然都用粗体表示出来了= = 但我还是没注意到 = =

bubuko.com,布布扣
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int main(){
    int numCase , i ,j ,t ,G;
    long long b[30];
    int array[30];
    array[0] = 0;
    array[1] = 1;
    for(i = 2 ; i <= 20 ; i++)
        array[i] = array[i-1] + array[i-2];
    scanf("%d",&numCase);
    while(numCase--){
        memset(b,0,sizeof(b));
        scanf("%d%d%d",&i,&G,&j);
        if((G - array[i-1]) % array[i] == 0 && (G - array[i-1]) / array[i] >= 1){
            // 满足存在t 并且,由题意可得 t>=1
            t = (G - array[i-1]) / array[i];
            b[0] = 1;
            b[1] = t;
            for(int k = 2 ; k <= 20 ; k++)
                b[k] = b[k-1] + b[k-2];
            printf("%lld\n",b[j]);
        }
        else{
            printf("-1\n");
        }
    }
    return 0;
}
bubuko.com,布布扣

 

ZOJ 3702 Fibonacci,布布扣,bubuko.com

ZOJ 3702 Fibonacci

原文:http://www.cnblogs.com/wushuaiyi/p/3654946.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!