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