hdu2098(素數對的個數統計)

2021-10-02 07:47:14 字數 679 閱讀 6198

題目描述:

思路:

就是先將10000內的所有素數通過num[10005]陣列進行記錄,陣列的值:0代表是素數,1代表不是素數 。然後在針對對應的偶數進行一半的查詢即可。因為你找到這一半,其實就相當於找到了另乙個,只要用(總值-查詢到的數)就可知另個對應的數了。由於只需要統計個數,所以這個拆分成素數的數字就沒有必要記錄了。

ac**:

#include

#include

intmain()

;//0代表是素數,1代表不是素數

num[1]

=1;//1不是素數,故置為1

for(

int i =

2;i <=

10000

;i++)}

}while

(scanf

("%d"

,&n)

!=eof)}

}printf

("%d\n"

,sum);}

return0;

}

分拆素數和 HDU 2098

problem 把乙個偶數拆成兩個不同素數的和,有幾種拆法呢?input 輸入包含一些正的偶數,其值不會超過10000,個數不會超過500,若遇0,則結束。output 對應每個偶數,輸出其拆成不同素數的個數,每個結果佔一行。sample input 30 26 0sample output3 2 ...

分拆素數和 HDU2098

link problem description 把乙個偶數拆成兩個不同素數的和,有幾種拆法呢?input 輸入包含一些正的偶數,其值不會超過10000,個數不會超過500,若遇0,則結束。output 對應每個偶數,輸出其拆成不同素數的個數,每個結果佔一行。sample input 30 26 0...

分拆素數和 HDU 2098

把乙個偶數拆成兩個不同素數的和,有幾種拆法呢?input 輸入包含一些正的偶數,其值不會超過10000,個數不會超過500,若遇0,則結束。output 對應每個偶數,輸出其拆成不同素數的個數,每個結果佔一行。sample input 30 260sample output3 2 題解 先寫乙個函式...