[程式設計題] 超級素數冪
時間限制:1秒
空間限制:32768k
如果乙個數字能表示為p^q(^表示冪運算)且p為乙個素數,q為大於1的正整數就稱這個數叫做超級素數冪。現在給出乙個正整數n,如果n是乙個超級素數冪需要找出對應的p,q。
輸入描述:
輸入乙個正整數n(2 ≤ n ≤ 10^18)
輸出描述:
如果n是乙個超級素數冪則輸出p,q,以空格分隔,行末無空格。 如果n不是超級素數冪,則輸出no
輸入例子:
27 輸出例子:
3 3解題思路:列舉q,對於每個q求p,然後判斷求出的p是否為整數且為素數,如果是,則輸出,不是則繼續查詢,查詢完成還沒有結果,則輸出no
1 #include 2 #include 3using
namespace
std;45
/*素數判定函式*/6
bool isprime( int
n )10
for( int i = 2; i <= sqrt(n); ++i )14}
15return
true;16
}1718int
main()
1931}32
if( !flag )35}
36return0;
37 }
超級素數冪
輸入描述 輸入乙個正整數n 2 n 10 18 輸出描述 如果n是乙個超級素數冪則輸出p,q,以空格分隔,行末無空格。如果n不是超級素數冪,則輸出no 輸入例子 27 輸出例子 3 3 解析 直接用整數n去從小到大餘素數會超時。正確做法是對n開方,依次開1 2 1 3直到結果小於2 最小的素數 超級...
超級素數冪
如果乙個數字能表示為p q 表示冪運算 且p為乙個素數,q為大於1的正整數就稱這個數叫做超級素數冪。現在給出乙個正整數n,如果n是乙個超級素數冪需要找出對應的p,q。include include using namespace std 素數判定函式 bool isprime int n for i...
python輸出超級素數 超級素數冪
問題描述 如果乙個數字能表示為pq 表示冪運算 且p為乙個素數,q為大於1的正整數就稱這個數叫做超級素數冪。現在給出乙個正整數n,如果n是乙個超級素數冪需要找出對應的p,q。輸入描述 輸入乙個正整數n 2 n 10 18 輸出描述 如果n是乙個超級素數冪則輸出p,q,以空格分隔,行末無空格。如果n不...