提交时间:2024-10-07 20:27:37

运行 ID: 33411

#include<bits/stdc++.h> using namespace std; long long q,n,m,k; int main(){ scanf("%lld",&q); while(q--){ scanf("%lld%lld%lld",&n,&m,&k); long long ji1=0,ji2=0,now=0,t=__gcd(n,m),sum1=0,sum2=0; if(k==1){ printf("%lld\n",min(n,m)); } else if(m%n==0){ long long b=m/n,flag=0; if(k%b!=0)flag=1; k=k*b/(b-1); if(flag)k--; printf("%lld\n",n*k); } else{ for(long long i=1;i<=k;i++){ if(sum1+n<sum2+m){ sum1+=n; if(i==k){ printf("%lld\n",sum1); } } else if(sum1+n>sum2+m){ sum2+=m; if(i==k){ printf("%lld\n",sum2); } } else sum1+=n,sum2+=m,i--; } } } return 0; }