給出乙個區間[a, b],計算區間內「神奇數」的個數。
神奇數的定義:存在不同位置的兩個數字,組成乙個兩位數(且不含前導0),且這個兩位數為質數。
比如:153,可以使用數字3和數字1組成13,13是質數,滿足神奇數。同樣153可以找到31和53也為質數,只要找到乙個質數即滿足神奇數。
輸入描述:
輸入為兩個整數a和b,代表[a, b]區間 (1 ≤ a ≤ b ≤ 10000)。
輸出描述:
輸出為乙個整數,表示區間內滿足條件的整數個數
輸入例子:
11 20
輸出例子:
思路:因只需判斷二位數質數,數量比較少,可以使用乙個陣列存放二位數質數,免去每次都要計算是不是質數
將每一位存放在陣列裡,供遍歷使用
#include "stdafx.h"
#include #include using namespace std;
int main()
; prime[11] = 1; prime[13] = 1; prime[17] = 1; prime[19] = 1; prime[23] = 1; prime[29] = 1; prime[31] = 1; prime[37] = 1; prime[41] = 1; prime[43] = 1; prime[47] = 1;
prime[53] = 1; prime[59] = 1; prime[61] = 1; prime[67] = 1; prime[71] = 1; prime[73] = 1; prime[79] = 1; prime[83] = 1; prime[89] = 1; prime[97] = 1;
int a = 0;
int b = 0;
cin >> a;
cin >> b;
if (a < 10) a = 10;
int count = 0;
if (b <= 10)
else
for (int j = 0; j < ary_everynum.size(); ++j)
for (int k = j-1; k >= 0; --k)
}if (!bprime)}}
}} }
cout << count << endl;
cin.get();
cin.get();
return 0;
}
牛客網習題彙總(一)
1.哪種遍歷序列的組合可以還原二叉樹 後序遍歷序列和中序遍歷序列。2.與克魯斯卡爾 kruskal 相比,普里姆 prim 演算法更適於求哪種網的最小生成樹 邊稠密的網。3.關鍵路徑是事件結點網路中 從源點到匯點的最長路徑。4.在下列排序演算法中,占用輔助空間最多的是 歸併排序。5.在系統記憶體中設...
雙向鍊錶習題(牛客網習題)
說明 設有乙個帶表頭結點的雙向迴圈鍊錶l,每個結點有4個資料成員 指向先驅結點的指標prior 指向後繼結點的指標next 存放資料的成員data和訪問頻度freq。所有結點的freq初始時都為0.每當在鍊錶上進行一次l.locate x 操縱時,令元素值x的結點的訪問頻度freq加1,並將該結點前...
牛客網 奇位數上都是奇數
題目描述 給定乙個長度不小於2的陣列arr。寫乙個函式調整arr,使arr中要麼所有的偶數字上都是偶數,要麼所有的奇數字上都是奇數上。要求 如果陣列長度為n,時間複雜度請達到o n 額外空間複雜度請達到o 1 下標0,2,4,6 算作偶數字,下標1,3,5,7 算作奇數字,例如 1,2,3,4 調整...