package main import . "fmt" import . "math/big" import . "os" import bf "bufio" func main() { rd := bf.NewReader(Stdin) var t int Fscan(rd, &t) for ; t > 0 ; t-- { var a,b,k int64 Fscan(rd,&a,&b,&k) gcd := new(Int).GCD(nil,nil,NewInt(a),NewInt(b)).Int64() lcm := a/gcd*b var lb, ub int64 = 1, 1<<62 for lb+1 < ub { mid := (lb+ub)/2 c := mid-mid/a-mid/b+mid/lcm if c <= k { lb = mid } else { ub = mid } } Println(lb) } }