#P0290. Simple Repetition

    传统题 1000ms 256MiB 显示标签>Codeforces

Simple Repetition

题目描述

Pasha 喜欢质数 ^{\text{∗}} !有一次他想找一个新的质数生成的方法,于是他在网上搜到了这样的数字生成方法:

  • 选择一个没有前导零的正整数 xx 和一个正整数 kk,把 xx 连写 kk 次得到新的正整数 yy

例如当 x=52, k=3x=52,\ k=3 时,y=525252y=525252x=6, k=7x=6,\ k=7 时,y=6666666y=6666666

Pasha 想让得到的数是质数,但是他不知道怎么判断这种方法生成的是不是质数。请你写一个程序来判断 yy 是否是质数。

^{\text{∗}} 质数,也叫素数,指的是那些含有恰好 22 个不同正约数的正整数。例如 1313 是一个质数,因为这个数只有 22 个不同正约数 11131311 则不是质数,因为 11 只有 11 个不同正约数,那就是 11

输入格式

输入包含多组数据。输入的开头是一个正整数 tt1t1001 \le t \le 100),代表测试数据总数。以下有 tt 组测试数据,每组测试数据格式如下:

输入仅有一行,两个没有前导零的正整数 xxkk1x109, 1k71 \le x \le {10}^9,\ 1 \le k \le 7)。

输出格式

对于每组测试数据,如果把 xx 连写 kk 次得到的数是质数,输出一行一个字符串 YES,否则输出一行一个字符串 NO

输入输出样例 #1

输入 #1

4
52 3
6 7
7 1
1 7

输出 #1

NO
NO
YES
NO