题目连接
题意:比赛时 ,居然理解错题意= =,以为两个人的速度是一样的,然后有个人的只会有一步是w米,另一个人只有一步是b米。。。。
就是一个人每一步是w,一个人每一步是b,终点后是深渊,然后长度是在1–t随机选择一个d作为赛道长度,问不能区分二人胜负的可能。
思路:就是求d%w==d%b = =
#include<bits/stdc++.h>
using namespace std;
#define LL long long
#define pb push_back
#define P pair<int,int>
#define cl(a,b) memset(a,b,sizeof(a))
const int maxn=10005;
const int inf=1<<27;
int main(){
LL t,w,b;
while(cin>>t>>w>>b){
LL gcd=__gcd(w,b),ans=0;
LL x=min(w-1,b-1);
if(w*1.0/gcd*b>double(t)){
ans=min(x,t);
}
else {
LL lcm=w/gcd*b;
LL num=t/lcm;
ans+=num*(x+1);
ans+=min(t-num*lcm,x);
}
gcd=__gcd(ans,t);
ans/=gcd;t/=gcd;
printf("%lld/%lld\n",ans,t);
}
return 0;
}