NOIP2018提高組初賽題目+解析
全國青少年計算機程式設計大賽究竟何時創辦?
字首與字尾為何混淆不清?
Catalan數到底表示什麼?
是什麼讓一臺只有紅藍兩色球的抽獎機如此火爆?
關機的手機究竟能否帶進考場?
負權迴路與Dijkstra演算法有什麼不為人知的關係?
圖靈獎到底是哪方設立?
四人郊遊為何只有兩人如約?
是什麼讓++cnt陷入無意義的迴圈?
雙向連結串列究竟是何方神聖?
小豬又為何在兩家商店間因鉅額消費徘徊不定?
歡迎來到第二十四屆NOIP!
先放答案。
初賽開心涼涼,差點AFO。
今年分數線格外低,似乎又多加了100多臺電腦,把我救活了。。。
一、單項選擇題(共10 題,每題2 分,共計20 分;每題有且僅有一個正確選項)
- 下列四個不同進位制的數中,與其它三項數值上不相等的是( )。
A. (269)16
B. (617)10
C. (1151)8
D. (1001101011)2
D 水題
- 下列屬於解釋執行的程式設計語言是( )。
A. C
B. C++
C. Pascal
D. Python
D 水題
- 中國計算機學會於( )年創辦全國青少年計算機程式設計競賽。
A. 1983
B. 1984
C. 1985
D. 1986
B 毒瘤題
- 設根節點深度為0,一棵深度為h 的滿k(k>1)叉樹,即除最後一層無任何子節點外,每一層上的所有結點都有k 個子結點的樹,共有( )個結點。
A.
B.
C.
D.
A 這題我直接帶進去試的,取了點巧
- 設某演算法的時間複雜度函式的遞推方程是T(n) = T(n - 1) + n(n 為正整數)及T(0) = 1,則該演算法的時間複雜度為( )。
A. O(log n) B. O(n log n) C. O(n) D. O()
D
這不是NOIP2015初賽原題嗎?幾乎一模一樣。
T(n)=T(n-1)+n
T(n-1)=T(n-2)+n-1
…
T(2)=T(1)+2
T(1)=T(0)+1
左右加起來
T(n)=T(1)+
所以時間複雜度O()
- 表示式a * d - b * c 的字首形式是( )。
A. a d * b c * -
B. - * a d * b c
C. a * d - b * c
D. - * * a d b c
B 水題
- 在一條長度為1 的線段上隨機取兩個點,則以這兩個點為端點的線段的期望長度是( )。
A. 1 / 2
B. 1 / 3
C. 2 / 3
D. 3 / 5
B 其實我也不會做
- 關於Catalan 數Cn = (2n)! / (n + 1)! / n!,下列說法中錯誤的是( )。
A. Cn 表示有n + 1 個結點的不同形態的二叉樹的個數。
B. Cn 表示含n 對括號的合法括號序列的個數。
C. Cn 表示長度為n 的入棧序列對應的合法出棧序列個數。
D. Cn 表示通過連線頂點而將n + 2 邊的凸多邊形分成三角形的方法個數。
A 常識
- 假設一臺抽獎機中有紅、藍兩色的球,任意時刻按下抽獎按鈕,都會等概率獲得紅球或藍球之一。有足夠多的人每人都用這臺抽獎機抽獎,假如他們的策略均為:抽中藍球則繼續抽球,抽中紅球則停止。最後每個人都把自己獲得的所有球放到一個大箱子裡,最終大箱子裡的紅球與藍球的比例接近於( )。
A. 1 : 2
B. 2 : 1
C. 1 : 3
D. 1 : 1
D 結論還是比較有趣的
- 為了統計一個非負整數的二進位制形式中1 的個數,程式碼如下:
int CountBit(int x)
{
int ret = 0;
while (x)
{
ret++;
________;
}
return ret;
}
則空格內要填入的語句是( )。
A. x >>= 1
B. x &= x - 1
C. x |= x >> 1
D. x <<= 1
B 常識
二、不定項選擇題(共5 題,每題2 分,共計10 分;每題有一個或多個正確選項,多選或少選均不得分)
- NOIP 初賽中,選手可以帶入考場的有( )。
A. 筆
B. 橡皮
C. 手機(關機)
D. 草稿紙
AB 常識
- 2-3 樹是一種特殊的樹,它滿足兩個條件:
(1)每個內部結點有兩個或三個子結點;
(2)所有的葉結點到根的路徑長度相同。
如果一棵2-3 樹有10 個葉結點,那麼它可能有( )個非葉結點。
A. 5
B. 6
C. 7
D. 8
CD 隨便畫一棵樹就知道了
- 下列關於最短路演算法的說法正確的有( )。
A. 當圖中不存在負權迴路但是存在負權邊時,Dijkstra 演算法不一定能求出源點到所有點的最短路。
B. 當圖中不存在負權邊時,呼叫多次Dijkstra 演算法能求出每對頂點間最短路徑。
C. 圖中存在負權迴路時,呼叫一次Dijkstra 演算法也一定能求出源點到所有點的最短路。
D. 當圖中不存在負權邊時,呼叫一次Dijkstra 演算法不能用於每對頂點間最短路計算。
ABD 常識
- 下列說法中,是樹的性質的有( )。
A. 無環
B. 任意兩個結點之間有且只有一條簡單路徑
C. 有且只有一個簡單環
D. 邊的數目恰是頂點數目減1
ABD 常識
- 下列關於圖靈獎的說法中,正確的有( )。
A. 圖靈獎是由電氣和電子工程師協會(IEEE)設立的。
B. 目前獲得該獎項的華人學者只有姚期智教授一人。
C. 其名稱取自電腦科學的先驅、英國科學家艾倫·麥席森·圖靈。
D. 它是計算機界最負盛名、最崇高的一個獎項,有“計算機界的諾貝爾獎”之稱。
BCD 明顯我不知道B是什麼鬼
三、問題求解(共2 題,每題5 分,共計10 分)
- 甲乙丙丁四人在考慮週末要不要外出郊遊。
已知①如果週末下雨,並且乙不去,則甲一定不去;②如果乙去,則丁一定去;③如果丙去,則丁一定不去;④如果丁不去,而且甲不去,則丙一定不去。如果週末丙去了,則甲________(去了/沒去)(1 分),乙________(去了/沒去)(1 分),丁________(去了/沒去)(1 分),週末________(下雨/沒下雨)(2 分)。
去了/沒去/沒去/沒下雨 邏輯題,隨便搞一搞就好了
- 方程 a*b = (a or b) * (a and b),在 a,b 都取 [0, 31] 中的整數時,共有_____組解。(*表示乘法;or 表示按位或運算;and 表示按位與運算)
454 不會做,題解是的
首先如果b是a的子集,那麼條件必然成立。然後手動簡單玩一下,發現只有1位和2位情況存在特例。手動找到這些的答案即可。
科學的解釋是:設a and b=x,a xor x=y,b xor x=z,則(x+y)(x+z)=x(x+y+z),即yz=0,即a and b=a或a and b=b
後面就不說了,也就靠自己了。
感覺很失敗啊。