CF2093C Simple Repetition
题目描述
Pasha 喜欢质数 $ ^{\text{∗}} $ !有一次他想找一个新的质数生成的方法,于是他在网上搜到了这样的数字生成方法:
- 选择一个没有前导零的正整数 $x$ 和一个正整数 $k$,把 $x$ 连写 $k$ 次得到新的正整数 $y$。
例如当 $x=52,\ k=3$ 时,$y=525252$,$x=6,\ k=7$ 时,$y=6666666$。
Pasha 想让得到的数是质数,但是他不知道怎么判断这种方法生成的是不是质数。请你写一个程序来判断 $y$ 是否是质数。
$ ^{\text{∗}} $ 质数,也叫素数,指的是那些含有恰好 $2$ 个不同正约数的正整数。例如 $13$ 是一个质数,因为这个数只有 $2$ 个不同正约数 $1$ 和 $13$。$1$ 则不是质数,因为 $1$ 只有 $1$ 个不同正约数,那就是 $1$。
输入格式
**输入包含多组数据**。输入的开头是一个正整数 $t$($1 \le t \le 100$),代表测试数据总数。以下有 $t$ 组测试数据,每组测试数据格式如下:
输入仅有一行,两个没有前导零的正整数 $x$ 和 $k$($1 \le x \le {10}^9,\ 1 \le k \le 7$)。
输出格式
对于每组测试数据,如果把 $x$ 连写 $k$ 次得到的数是质数,输出一行一个字符串 `YES`,否则输出一行一个字符串 `NO`。
输出并不区分大小写,也就是说,`Yes`、`No`、`yEs` 和 `nO` 等输出都将被判为正确。