#define _GLIBCXX_DEBUG #include #include #include using namespace atcoder; using namespace std; typedef long long ll; #define rep(i,a,b) for(int i=a;i; using vvi = vector; using li =vector; using lli=vector
  • ; using si =vector; using ssi =vector; const long long INF = 1e18; const long long MOD=1e9+7; //for (auto [key, val] : mp) int main() { ll t;cin>>t; while(t--){ ll p,q,k;cin>>p>>q>>k; ll g=gcd(p,q); p/=g;q/=g; ll ok=min(p,q)*k,ng=0; while(ok-ng>1){ ll mid=(ok+ng)/2; ll sum=floor_sum(min(mid/p+1,q),q,-1*p,mid)+min(mid/p+1,q); if(sum>k)ok=mid; else ng=mid; } cout<