ああ...
トピックリンクします。http://poj.org/problem ID = 3641?
ACコード:
1の#include <cstdioを> 2の#include <iostreamの> 3 4 使用して 名前空間STDを、 5 6インラインブール is_prime(INT X){ 7 であれば(x == 2)リターン 1 。 8 もし(x%2 == 0)戻り 0 ; 9 のためには、(int型 I = 3 ; iは= xを<*; I + = 2 ){ 10 であれば((X%I)!)戻り 0 ; 11 } 12 リターン 1 。 13 } 14 15インライン長い 長い(quick_mod 長い 長い、長い 長い B、長い 長M){ 16 長い 長のANS = 1 。 17 一方、(B){ 18 であれば(B&1)ANS = ANS *%のM。 19 = *%のM。 20 B >> = 1 。 21 } 22 リターンANS; 23 } 24 25 INT メイン(){ 26 長い 長M、N。 27 一方(〜のscanf(" %のLLDの%のLLD "、&M、&N)&& M + N){ 28 であれば(is_prime(M)){ 29 のprintf(" なしの\ n " ); 30 続け; 31 } 32の 長い 長ANS。 33 ANS = quick_mod(N、M、M)。 34 もし(ANS == n)でのprintf(" はい\ nを" ); 35 他の printf関数(" なし\ nを" ); 36 } 37 リターン 0 。 38 }