#include using namespace std; using ll = long long; ll p,q; ll h,w,k; ll bs(ll l, ll r, vector&X,ll x){ if (l>r){ return l; } ll m = (l+r)/2; ll t = X[p] * ((m+k)/p) + X[(m+k)%p]; t -= X[p]*(k/p) + X[k%p]; if (t> p >> q; string s; cin >> s; vector H (p+1,0); vector W (p+1,0); for (int i=0;i hw; ll ans; int j; ll x; ll res; for (int i=0;i> h >> w >> k; hw = {h,w}; ans = 100000000000; j = 0; for (auto X:{H,W}){ x = hw[j]; if (X[p]==0){ j++; continue; } res = bs(0,h+w,X,x); ans = min(ans,res); j++; } cout << (ans+k)%p << endl; } }