加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

HDU 4180 RealPhobia

发布时间:2020-12-14 04:25:43 所属栏目:大数据 来源:网络整理
导读:这道题还是不太明白 开学后要去问一问巨佬们 #include cstdio#include cstring#include iostream#include algorithmusing namespace std;inline long long read(){long long x=0,f=1,ch=getchar();while(ch‘0‘||ch‘9‘){if(ch==‘-‘)f=-1;ch=getchar();}

这道题还是不太明白

开学后要去问一问巨佬们

#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
inline long long read(){
	long long x=0,f=1,ch=getchar();
	while(ch<‘0‘||ch>‘9‘){if(ch==‘-‘)f=-1;ch=getchar();}
	while(ch>=‘0‘&&ch<=‘9‘){x=x*10+ch-‘0‘;ch=getchar();}
	return x*f;
}
inline long long exgcd(long long a,long long b,long long &x,long long &y){
	if(b==0){
		x=1;y=0;
		return a;
	}
	long long d=exgcd(b,a%b,y,x);
	y-=a/b*x;
	return d;
}
int main(){
	long long T=read();
	while(T--){
		long long a=read(),b=read(),x,y;
		long long d=exgcd(a,b,y);
		if(a==1) printf("%lld/%lldn",a,b-1);
		else if(d!=1) printf("%lld/%lldn",a/d,b/d);
		else{
			long long c1=(-y+a)%a;
			long long d1=(x+b)%b;
			long long c2=(y+a)%a;
			long long d2=(-x+b)%b;
			if (d1>d2) printf("%lld/%lldn",c1,d1);
			else printf("%lld/%lldn",c2,d2);
		}
	}
	return 0;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读