#include using namespace std; #define TASK "Cau3" #define VMO27 signed main #define PPC ios::sync_with_stdio(0); cin.tie(0); cout.tie(0) #define FILE if (fopen(TASK".INP","r")) freopen(TASK".INP","r",stdin), freopen(TASK".OUT","w",stdout) #define mn 5000233 #define ll long long #define ld long double #define FOR(i, a, b) for (int i = (a); i<=(b); ++i) #define FORD(i, b, a) for (int i = (b); i>=(a); --i) #define fi first #define se second #define pii pair #define pll pair #define vi vector #define vii vector> #define vll vector> #define v_ll vector #define all(Vv) Vv.begin(), Vv.end() #define ms(Aa,Xx) memset(Aa,Xx,sizeof(Aa)) #define sz size() #define el cout << '\n' #define Mask(i) (1LL << i) #define Bit(mask, i) ((mask >> i) & 1) #define onbit(mask, i) ((mask)|(1LL << i)) #define offbit(mask, i) ((mask) &~ (1LL << i)) #define reversebit(mask, i) ((mask) ^ (1LL << i)) const ll Base = 311; const int MOD = 1e9 + 7; const int MOD2 = 1e9 + 8277; int t; ll k, a, b, c; void inp(){ cin >> t; } ll lcm(ll x, ll y){ return x / __gcd(x, y) * y; } ll check(ll N){ ll cnt = N - (N / a + N / b - N / c); return (cnt >= k); } void HA(){ cin >> k >> a >> b; c = lcm(a, b); ll l = 0, r = 230320100912, res = 0; while (r - l > 1){ ll mid = (l + r) >> 1; if (check(mid)){ res = mid; r = mid; } else l = mid; } cout << res << '\n'; } void solve(){ while (t--){ HA(); } } VMO27(){ PPC; FILE; inp(); solve(); return 0; }