P2667 超級素數

2021-08-05 22:36:29 字數 437 閱讀 6185

n<=100000000,線性篩都不靈了,不過要是考試的話我會選擇打表,嘻嘻。

怎麼辦呢?

我們想一想,符合條件的數一定不多,我們可以選擇造乙個這樣的數。

從高位開始造,只有再加上一位後的數是質數我們才加,所以我們搜尋經過的數都符合條件。

時間複雜度也就是不到o(10^6)。

#include

#include

#include

#include

#include

using

namespace

std;

int n,ans[101],cnt;

bool isprime(int x)

void dfs(int len,int num)

}int main()

luogu2667 超級質數

背景就是描述,描述就是背景。乙個質數如果從個位開始,依次去掉一位數字,兩位數字,三位數字。直到只剩一位數字中間所有剩下的數都是質數,則稱該質數為乙個超級質數。例如 2333是乙個質數,因為2333,233,23,2都是質數,所以2333是乙個四位超級素數。請你寫乙個程式,給定乙個整數x,求大小小於x...

python輸出超級素數 超級素數冪

問題描述 如果乙個數字能表示為pq 表示冪運算 且p為乙個素數,q為大於1的正整數就稱這個數叫做超級素數冪。現在給出乙個正整數n,如果n是乙個超級素數冪需要找出對應的p,q。輸入描述 輸入乙個正整數n 2 n 10 18 輸出描述 如果n是乙個超級素數冪則輸出p,q,以空格分隔,行末無空格。如果n不...

超級素數冪

輸入描述 輸入乙個正整數n 2 n 10 18 輸出描述 如果n是乙個超級素數冪則輸出p,q,以空格分隔,行末無空格。如果n不是超級素數冪,則輸出no 輸入例子 27 輸出例子 3 3 解析 直接用整數n去從小到大餘素數會超時。正確做法是對n開方,依次開1 2 1 3直到結果小於2 最小的素數 超級...