LightOj-1077-GCD?!?!?!?

这个题就是求一段线段上整数点的个数。然后完全不知道这个竟然是两个边的最大公约数、、、也就是相似三角形的个数,所以加上一个原有的点就是答案。

#include <cstdio>
#include <cstring>
#include <cmath>
#include <vector>
#include <iostream>

using namespace std;

long long int x1,x2,yy,y2,t;

long long int gcd(long long int a,long long int b)
{
    if(b==0) return a;
    else return gcd(b,a%b);
}

int main()
{
    scanf("%d",&t);
    for(int i=1; i<=t; i++)
    {
        scanf("%lld%lld%lld%lld",&x1,&yy,&x2,&y2);
        long long int  ans=gcd(abs(x1-x2),abs(yy-y2));
        printf("Case %d: %lld\n",i,ans+1);
    }
    return 0;
}


猜你喜欢

转载自blog.csdn.net/alusang/article/details/80002714
gcd