提交时间:2024-10-07 19:05:05

运行 ID: 33373

#include<bits/stdc++.h> using namespace std; long long n,m,t,k; long long lcm1; long long lcm(long long x,long long y){ return x*y/__gcd(x,y); } bool check(long long k1){ long long ans = k1/n + k1/m - 2*(k1/lcm1); return ans >= k; } int main(){ cin>>t; while(t--){ cin>>n>>m>>k; lcm1=lcm(n,m); long long l =0,r=2e18; while(l+1<r){ long long mid = l+r>>1; if(check(mid)) r=mid; else l=mid; } cout<<r<<endl; } }