| 比赛 | 2025.9.13 | 评测结果 | AAAAAAAAAAAA |
|---|---|---|---|
| 题目名称 | Transforming Pairs | 最终得分 | 100 |
| 用户昵称 | zhyn | 运行时间 | 0.069 s |
| 代码语言 | C++ | 内存使用 | 3.70 MiB |
| 提交时间 | 2025-09-13 10:26:41 | ||
#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll t,n;
int main(){
freopen("Transforming.in","r",stdin);
freopen("Transforming.out","w",stdout);
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
cin>>t;
while(t--){
ll a,b,c,d;
cin>>a>>b>>c>>d;
ll ans=0,k,u;
bool flag=false;
while(c>=a&&d>=b){
if(c==a&&d==b){
flag=true;
break;
}
if(c>d){
k=c/d;
c-=d*k;
if(c<a){
c+=d*k;
u=(c-a)/d;
if(u==0){
break;
}
c-=u*d;
ans+=u;
}
else{
ans+=k;
}
}
else{
k=d/c;
d-=c*k;
if(d<b){
d+=c*k;
u=(d-b)/c;
if(u==0){
break;
}
d-=u*c;
ans+=u;
}
else{
ans+=k;
}
}
}
if(flag){
cout<<ans<<"\n";
}
else{
cout<<"-1\n";
}
}
return 0;
}