#G5014. [GESP202503 五级] 原根判断

[GESP202503 五级] 原根判断

题目描述
小 A 知道,对于质数 p 而言,p 的原根 g 是满足以下条件的正整数:

  1. 1 < g < p;
  2. gp1g^{p-1}mod p=1
  3. 对于任意 ( 1 ≤ i ≤ p - 1 ),均有 ( gig^i mod p ≠1 )。

其中 ( a mod p ) 表示 ( a ) 除以 ( p ) 的余数。
小 A 现在有一个整数 ( a ),请你帮他判断 ( a ) 是不是 ( p ) 的原根。

输入格式
第一行,一个正整数 ( T ),表示测试数据组数。
每组测试数据包含一行,两个正整数 ( a, p )。

输出格式
对于每组测试数据,输出一行,如果 ( a ) 是 ( p ) 的原根则输出 Yes,否则输出 No

样例

输入样例 1

3  
2 5  
3 5  
4 5  

输出样例 1

Yes  
Yes  
No  

数据范围

  • 对于 40% 的测试点,保证 ( 3 ≤ p ≤ 10310^3)。
  • 对于所有测试点,保证 ( 1 ≤ T ≤ 20, 3 ≤ p ≤ 10910^9, 1 < a < p ),且 ( p ) 为质数。