AT_tricky_3 階乗と素因数

Description

[problemUrl]: https://atcoder.jp/contests/tricky/tasks/tricky_3 $ N!\ =\ 1\ \times\ 2\ \times\ ...\ \times\ N $ に含まれる素因数 $ p $ の個数を $ F(N,\ p) $ と書くことにする. (ただし $ p $ は素数である) つまり,$ N!/p^k $ が整数となるような最大の非負整数 $ k $ が $ F(N,\ p) $ である. 例えば,$ N=12 $ のとき $ 12!\ =\ 479001600\ =\ 2^{10}\ \times\ 3^5\ \times\ 5^2\ \times\ 7\ \times\ 11 $ であるから,$ F(12,\ 2)\ =\ 10,\ F(12,\ 3)\ =\ 5,\ F(12,\ 47)\ =\ 0 $ などである. 今,素数 $ p $ と整数 $ x $ が与えられるので,$ N-F(N,\ p)\ =\ x $ となる最小の非負整数 $ N $ を求めてください. なお,$ 0!\ =\ 1 $ である. 最初の行にはテストケースの数 $ T $ が与えられる. その後の行には $ T $ 個のテストケースが続く. 各テストケースは $ 1 $ 行のみからなり,半角スペース区切りで $ p,\ x $ が与えられる. - $ 0\ \leq\ T\ \leq\ 5000 $ - $ 2\ \leq\ p\ \leq\ 47 $ で $ p $ は素数である - $ 0\ \leq\ x\ \leq\ 50 $ で $ x $ は整数である 各テストケースに対して,$ N-F(N,\ p)\ =\ x $ となる最小の非負整数 $ N $ を出力してください. ただし,そのような $ N $ が存在しなければ `-1` を(シングルクォーテーションを除いて)出力してください. ```
2
5 0
47 50
```

 ```
0
51
```
                            

Input Format

N/A

Output Format

N/A