輸入乙個整數n(2<=n<=10000),要求輸出所有從1到這個整數之間(不包括1和這個整數)個位為1的素數,如果沒有則輸出-1。
輸入有多組資料。每組一行,輸入n。
輸出所有從1到這個整數之間(不包括1和這個整數)個位為1的素數(素數之間用空格隔開,最後乙個素數後面沒有空格),如果沒有則輸出-1。示例1
100
11 31 41 61 71素數篩選法:
思路是找到乙個素數,就將它的所有倍數均標記成非素數,這樣當遍歷到乙個數時,若它未被任何小於它的素數標記為非素數,則可確定其為素數
而在本題中的從1-n之間的素數在輸出時的迴圈條件要十分注意:
#include#include#include#includeusing namespace std;
vector prime;//儲存質數
const int maxn = 10001;
bool isprime[maxn];
void searchs() //素數篩選法找到2~10000之間的所有素數
isprime[0]=false;
isprime[1]=false;
for(int i=2;i
prime.push_back(i); //是素數則加入陣列裡
for(int j=i*i;j
isprime[j]=false;
}}int main()
for(i=0;i
printf("%d ",a[i]);
printf("%d\n",a[i]);}}
北郵複試機試之打牌
牌只有1到9,手裡拿著已經排好序的牌a,對方出牌b,用程式判斷手中牌是否能夠壓過對方出牌。規則 出牌牌型有5種 1 一張 如4 則5.9可壓過 2 兩張 如44 則55,66,77,99可壓過 3 三張 如444 規則如 2 4 四張 如4444 規則如 2 5 五張 牌型只有12345 23456...
王道複試機試(2)
學號姓名排名 用sort函式 include include include using namespace std struct student student arr 100 bool compare student x,student y else return x.score int mai...
王道複試機試(7)
1.bfs寬度優先搜尋 include include include using namespace std void bfs int n myqueue.push current 10 myqueue.push current 10 1 int main return0 3的過程應該就是 右為隊...