第十八届全国青少年信息学奥林匹克联赛 初赛
提高组参考答案
一、单项选择题(共 10题,每题1.5分,共计15分)
1 2 3 4 5 6 7 8 9 10
A B B A D A A D A B
二、不定项选择题(共 10题,每题1.5分,共计15分,多选或少选均不得分)
1 2 3 4 5
A AD AD BD ABC
6 7 8 9 10
CD AB A CD BD
三、问题求解(共 2题,每题5分,共计10分)
1. 256
2. 5536
四、阅读程序写结果(共 4题,每题8分,其中第 3题的2个小题各4分,共计32分)
1. 41
2. 16
3. (1)7 (4分)
(2)2004 (4分)
4. 55
五、完善程序(第 1题第2空3分,其余每空 2.5分,共计28分)以下各程序填空可能还有一些等价的
写法,各省 赛区可请本省专家审定和上机验证, 可以不上报CCF NOI科学委员会 检查。
Pascal语言 C++语言 C语言
1 ① false 0
② used[data[i]] := false used[data[i]] = false used[data[i]] = 0
③ j
④ n
⑤ break
2 ① next := (k mod c) + 1 return (k % c) + 1
② s[n] := q[tail] s[n] = q[tail]
③ q[head]
④ q[head]
⑤ q[tail]
⑥ next(head)
其中,Pascal语言和C++语言中的false可以用0代替;第2题第1空中的圆括号可以省略。
NOIP2012提高组初赛参考答案,2012年NOIP信息学奥赛提高组初赛C++真题参考答案