【题解】The GCD of Fibonacci Numbers

The GCD of Fibonacci Numbers

http://www.nowcoder.com/questionTerminal/404a3b084acf49a592dc0dcd30610a5c

题目

The GCD of Fibonacci Numbers

思路

重要性质:,当中 表示斐波那契数列的第 项。

题目中保证了 直接递推求就可以了。

#include<iostream>
#include<string>
#include<cstring>
#include<cstdio>
#include<algorithm>

typedef long long ll;
ll t,n,m,fib[47];

inline void read(ll &T) {
    ll x=0;bool f=0;char c=getchar();
    while(c<'0'||c>'9'){if(c=='-')f=!f;c=getchar();}
    while(c>='0'&&c<='9'){x=x*10+c-'0';c=getchar();}
    T=f?-x:x;
}

ll gcd(ll a,ll b) {
    return b?gcd(b,a%b):a;
}

int main() {
    read(t);fib[1]=1,fib[2]=1,fib[3]=2;
    for(int i=4;i<=46;++i) fib[i]=fib[i-1]+fib[i-2];
    while(t--) {
        read(n),read(m);
        if(m>n) std::swap(n,m);
        std::cout<<fib[gcd(n,m)]<<'\n';
    }
    return 0;
}
全部评论
good
点赞 回复 分享
发布于 2020-01-16 07:44

相关推荐

05-29 20:34
门头沟学院 C++
KarlAllen:得做好直接春招的准备。学历差的话,一是面试要求会比学历好的严格不少,二是就算面试通过了也会被排序。总之暑期和秋招对于学历差的就是及其不友好
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务