luo's oj P1731数列

题目链接

/*  假设x>y 
    f(x,y)=f(y,x);
    f(1,x)=x+1;
    由a1=x,a2=y,a3=x-y;而x>yx-y!=y,delta恒小于x 
    得f(x,y)=f(y,x-y)+1=f(y,x-n*y)+n=f(y,x%y)+x/y; 
    于是gcd计数 
*/
#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll gcd(ll a,ll b){
    if(b==0)return 1;
    else return gcd(b,a%b)+a/b;
}
ll a,b;
int main(){
    scanf("%lld%lld",&a,&b);
    if(a<b)swap(a,b);
    printf("%lld",gcd(a,b));
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_36316033/article/details/80948286