Hide

# Problem GPseudoprime numbers

Fermat’s theorem states that for any prime number $p$ and for any integer $a \ge 0$, $a^ p \equiv a \pmod{p}$. That is, if we raise $a$ to the $p$th power and divide by $p$, the remainder is $a$. Some (but not very many) non-prime values of $p$, known as base-$a$ pseudoprimes, have this property for some $a$. (And some, known as Carmichael Numbers, are base-$a$ pseudoprimes for all $a$.)

Given $2 < p \le 1\, 000\, 000\, 000$ and $1 < a < p$, determine whether or not $p$ is a base-$a$ pseudoprime.

## Input

Input contains several test cases followed by a line containing “0 0”. Each test case consists of a line containing $p$ and $a$.

## Output

For each test case, output “yes” if $p$ is a base-$a$ pseudoprime; otherwise output “no”.

Sample Input 1 Sample Output 1
3 2
10 3
341 2
341 3
1105 2
1105 3
0 0

no
no
yes
no
yes
yes

CPU Time limit 1 second
Memory limit 1024 MB
Statistics Show