问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

2011noip初赛试卷谁有啊

发布网友 发布时间:2022-04-07 09:36

我来回答

1个回答

热心网友 时间:2022-04-07 11:05

一、单项选择题(共20题,每题1.5分,共计30分。每题有且仅有一个正确选项。)
1.在二进制下,1101001 + ( ) = 1110110。
A. 1011 B. 1101 C. 1010 D. 1111
2.字符“0”的ASCII码为48,则字符“9”的ASCII码为( )。
A. 39 B. 57 C. 120 D. 视具体的计算机而定
3.一片容量为8GB的SD卡能存储大约( )张大小为2MB的数码照片。
A. 1600 B. 2000 C. 4000 D. 16000
4.摩尔定律(Moore's law)是由英特尔创始人之一戈登•摩尔(Gordon Moore)提出来的。根据摩尔定律,在过去几十年以及在可预测的未来几年,单块集成电路的集成度大约每( )个月翻一番。
A. 1 B. 6 C. 18 D. 36

5.无向完全图是图中每对顶点之间都恰有一条边的简单图。已知无向完全图G有7个顶点,则它共有( )条边。
A. 7 B. 21 C. 42 D. 49

6.寄存器是( )的重要组成部分。
A. 硬盘 B. 高速缓存 C. 内存 D. *处理器(CPU)

7.如果根结点的深度记为1,则一棵恰有2011个叶结点的二叉树的深度最少是( )。
A. 10 B. 11 C. 12 D. 13

8. 体育课的铃声响了,同学们都陆续地奔向操场,按老师的要求从高到矮站成一排。每个同学按顺序来到操场时,都从排尾走向排头,找到第一个比自己高的同学,并站在他的后面。这种站队的方法类似于( )算法 。
A. 快速排序 B. 插入排序 C. 冒泡排序 D. 归并排序

9.一个正整数在二进制下有100位,则它在十六进制下有( )位。
A. 7 B. 13 C. 25 D. 不能确定

10.有人认为,在个人电脑送修前,将文件放入回收站中就是已经将其删除了。这种想法是( )。
A. 正确的,将文件放入回收站意味着彻底删除、无法恢复
B. 不正确的,只有将回收站清空后,才意味着彻底删除、无法恢复
C. 不正确的,即使将回收站清空,文件只是被标记为删除,仍可能通过恢复软件找回
D. 不正确的,只要在硬盘上出现过的文件,永远不可能被彻底删除

11.广度优先搜索时,需要用到的数据结构是( )。
A. 链表 B. 队列 C. 栈 D. 散列表

12.在使用高级语言编写程序时,一般提到的“空间复杂度”中的“空间”是指( )。
A. 程序运行时理论上所占的内存空间
B. 程序运行时理论上所占的数组空间
C. 程序运行时理论上所占的硬盘空间
D. 程序源文件理论上所占的硬盘空间

13.在含有n个元素的双向链表中查询是否存在关键字为k的元素,最坏情况下运行的时间复杂度是( )。
A. O(1) B. O(log n) C. O(n) D. O(n log n)

14.生物特征识别,是利用人体本身的生物特征进行身份认证的一种技术。目前,指纹识别、虹膜识别、人脸识别等技术已广泛应用于*、银行、安全防卫等领域。以下不属于生物特征识别技术及其应用的是( )。
A. 指静脉验证 B. 步态验证 C. ATM机密码验证 D. 声音验证

15.现有一段文言文,要通过二进制哈夫曼编码进行压缩。简单起见,假设这段文言文只由4个汉字“之”、“乎”、“者”、“也”组成,它们出现的次数分别为700、600、300、200。那么,“也”字的编码长度是( )。
A. 1 B. 2 C. 3 D. 4

16.关于汇编语言,下列说法错误的是( )。
A. 是一种与具体硬件相关的程序设计语言
B. 在编写复杂程序时,相对于高级语言而言代码量较大,且不易调试
C. 可以直接访问寄存器、内存单元、以及I/O端口
D. 随着高级语言的诞生,如今已完全被淘汰,不再使用

17.( )是一种选优搜索法,按选优条件向前搜索,以达到目标。当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择。
A. 回溯法 B. 枚举法 C. 动态规划 D. 贪心法

18.1956年( )授予肖克利(William Shockley)、巴丁(John Bardeen)和布拉顿(Walter Brattain),以表彰他们对半导体的研究和晶体管效应的发现。
A. 诺贝尔物理学奖
B. 约翰•冯•诺依曼奖
C. 图灵奖
D. 高德纳奖(Donald E. Knuth Prize)

19.对一个有向图而言,如果每个节点都存在到达其他任何节点的路径,那么就称它是强连通的。例如,右图就是一个强连通图。事实上,在删掉边( )后,它依然是强连通的。
A. a B. b C. c D. d

20.从ENIAC到当前最先进的计算机,冯•诺依曼体系结构始终占有重要的地位。冯•诺依曼体系结构的核心内容是( )。
A. 采用开关电路 B. 采用半导体器件
C. 采用存储程序和程序控制原理 D. 采用键盘输入

二、问题求解(共2题,每题5分,共计10分)

1.每份考卷都有一个8位二进制序列号。当且仅当一个序列号含有偶数个1时,它才是有效的。例如,00000000、01010011都是有效的序列号,而11111110不是。那么,有效的序列号共有________个。

2.定义字符串的基本操作为:删除一个字符、插入一个字符和将一个字符修改成另一个字符这三种操作。将字符串A变成字符串B的最少操作步数,称为字符串A到字符串B的编辑距离。字符串"ABCDEFG"到字符串"BADECG"的编辑距离为________。

三、阅读程序写结果(共4题,每题8分,共计32分)

1.
#include<stdio.h>
int main() {
int i, n, m, ans;

scanf("%d%d", &n, &m);
i = n;
ans = 0;
while (i <= m) {
ans += i;
i++;
}
printf("%d\n", ans);
return 0;
}
输入:10 20
输出:_________

2.
#include <stdio.h>
#include <string.h>
#define SIZE 20

int main()
{
char map[] = "22233344455566677778889999";
char tel[SIZE];
int i;

scanf("%s", tel);
for (i = 0; i < strlen(tel); i++)
if ((tel[i] >= '0') && (tel[i] <= '9'))
printf("%c", tel[i]);
else if ((tel[i] >= 'A') && (tel[i] <= 'Z'))
printf("%c", map[tel[i] - 'A']);
return 0;
}

输入:CCF-NOIP-2011
输出:_________

3.
#include <stdio.h>
#include <string.h>
#define SIZE 100

int main()
{
int n, i, sum, x, a[SIZE];

scanf("%d", &n);
memset(a, 0, sizeof(a));
for (i = 1; i <= n; i++) {
scanf("%d", &x);
a[x]++;
}

i = 0;
sum = 0;
while (sum < (n / 2 + 1)) {
i++;
sum += a[i];
}
printf("%d\n", i);
return 0;
}

输入:
11
4 5 6 6 4 3 3 2 3 2 1
输出:_________

4.
#include <stdio.h>

int solve(int n, int m)
{
int i, sum;

if (m == 1)
return 1;
sum = 0;
for (i = 1; i < n; i++)
sum += solve(i, m - 1);
return sum;
}

int main()
{
int n, m;

scanf("%d %d", &n, &m);
printf("%d\n", solve(n, m));
return 0;
}

输入:7 4
输出:_________

四、完善程序(前11空,每空2分,后2空,每空3分,共计28分)

1.(子矩阵)输入一个n1*m1的矩阵a,和n2*m2的矩阵b,问a中是否存在子矩阵和b相等。若存在,输出所有子矩阵左上角的坐标;若不存在输出“There is no answer”。

#include <stdio.h>
#define SIZE 50

int n1, m1, n2, m2, a[SIZE][SIZE], b[SIZE][SIZE];

int main()
{
int i, j, k1, k2, good, haveAns;

scanf("%d %d", &n1, &m1);
for (i = 1; i <= n1; i++)
for (j = 1; j <= m1; j++)
scanf("%d", &a[i][j]);
scanf("%d %d", &n2, &m2);
for (i = 1; i <= n2; i++)
for (j = 1; j <= m2; j++)
① ;

haveAns = 0;
for (i = 1; i <= n1 - n2 + 1; i++)
for (j = 1; j <= ② ; j++) {
③ ;
for (k1 = 1; k1 <= n2; k1++)
for (k2 = 1; k2 <= ④ ; k2++) {
if (a[i + k1 - 1][j + k2 - 1] != b[k1][k2])
good = 0;
}
if (good == 1) {
printf("%d %d\n", i, j);
⑤ ;
}
}
if (haveAns == 0)
printf("There is no answer\n");
return 0;
}

2.(大整数开方)输入一个正整数n(1≤n<10100),试用二分法计算它的平方根的整数部分。

#include <stdio.h>
#include <string.h>
#define SIZE 200

typedef struct node {
int len, num[SIZE];
} hugeint;
//其中len表示大整数的位数;num[1]表示个位、num[2]表示十位,以此类推

hugeint times(hugeint a, hugeint b)
//计算大整数a和b的乘积
{
int i, j;
hugeint ans;

memset(ans.num, 0, sizeof(ans.num));
for (i = 1; i <= a.len; i++)
for (j = 1; j <= b.len; j++)
① += a.num[i] * b.num[j];
for (i = 1; i <= a.len + b.len; i++) {
ans.num[i + 1] += ans.num[i] / 10;
② ;
}
if (ans.num[a.len + b.len] > 0)
ans.len = a.len + b.len;
else
ans.len = a.len + b.len - 1;
return ans;
}

hugeint add(hugeint a, hugeint b)
//计算大整数a和b的和
{
int i;
hugeint ans;

memset(ans.num, 0, sizeof(ans.num));
if (a.len > b.len)
ans.len = a.len;
else
ans.len = b.len;
for (i = 1; i <= ans.len; i++) {
ans.num[i] += ③ ;
ans.num[i + 1] += ans.num[i] / 10;
ans.num[i] %= 10;
}
if (ans.num[ans.len + 1] > 0)
ans.len++;
return ans;
}

hugeint average(hugeint a, hugeint b)
//计算大整数a和b的平均数的整数部分
{
int i;
hugeint ans;

ans = add(a, b);
for (i = ans.len; i >= 2; i--) {
ans.num[i - 1] += ( ④ ) * 10;
ans.num[i] /= 2;
}
ans.num[1] /= 2;
if (ans.num[ans.len] == 0)
ans.len--;
return ans;
}

hugeint plustwo(hugeint a)
//计算大整数a加2后的结果
{
int i;
hugeint ans;

ans = a;
ans.num[1] += 2;
i = 1;
while ((i <= ans.len) && (ans.num[i] >= 10)) {
ans.num[i + 1] += ans.num[i] / 10;
ans.num[i] %= 10;
i++;
}
if (ans.num[ans.len + 1] > 0)
⑤ ;
return ans;
}

int over(hugeint a, hugeint b)
//若大整数a>b则返回1,否则返回0
{
int i;

if ( ⑥ )
return 0;
if (a.len > b.len)
return 1;
for (i = a.len; i >= 1; i--) {
if (a.num[i] < b.num[i])
return 0;
if (a.num[i] > b.num[i])
return 1;
}
return 0;
}

int main()
{
char s[SIZE];
int i;
hugeint target, left, middle, right;

scanf("%s", s);
memset(target.num, 0, sizeof(target.num));
target.len = strlen(s);
for (i = 1; i <= target.len; i++)
target.num[i] = s[target.len - i] - ⑦ ;
memset(left.num, 0, sizeof(left.num));
left.len = 1;
left.num[1] = 1;
right = target;
do {
middle = average(left, right);
if (over( ⑧ ) == 1)
right = middle;
else
left = middle;
} while (over(plustwo(left), right) == 0);
for (i = left.len; i >= 1; i--)
printf("%d", left.num[i]);
printf("\n");
return 0;
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
武汉大学在职研究生考试科目有哪些 报考武汉大学在职研究生录取率高吗? 武汉大学mpa在职研究生好考吗 忘记车子买哪家保险 怎么查 67年的羊和什么生肖最配夫妻 67年的羊和69年鸡相配吗? 67年羊男与69年鸡女同是11月出生婚配如何? 67年9月和69年十月的结婚 “新菊亦侵篱”的出处是哪里 “闲绕篱头看菊花”的出处是哪里 我跟我男友说我男闺蜜送的熊他就不开心了是吃醋了吗? 读《这不是一颗流星》写“___,我想对你说” 俄罗斯一女子开车载熊兜风,这只熊没有攻击力吗? 金发姑娘不喜欢熊他不是很什么? 逃离马戏团的熊主要内容? 海贼王中 暴君熊为什么放走路飞一活儿? 海贼王489为什么有个暴君熊拿本书? 为什么我摸了我家的仓鼠熊他一直打喷嚏啊 白熊三兄弟是什么动画片 海贼王, 熊真的被改造成和平主义者PX-0? 139邮箱怎么注册呢?我怎么注册不上呢 我是魔兽新手,猎人 我抓了一个维斯迦尔熊他的资料上写着技能“ 打击” 啥意思??? 联通试机号码注册139邮箱 邮箱容量是多少? 基佬为什么喜欢熊 用联通手机注册139邮箱,怎么注销 九岁女孩写作业光熊他,最近说话吐字不清,一会又好了,问他,他也不知道怎么了? 为什么我联通号码注册139邮箱收不到验证码 熊这种动物有多可怕?野外遇到熊之后该如何自救? 中国联通能使用139邮箱吗 熊他是什么意思是什么 我把系统自带的浏览器卸载了,想重装怎么办 如何 重新 安装 系统 自带 ie 电脑ie浏览器语言包不小心卸载了,怎样再重新安装上呢 cad每次打开文件都会自动显示线宽,一个各地关掉显示线宽挺麻烦,怎样才能不自动显示线宽呢?谢谢指点。 CAD画pl线怎么取消自带线宽 CAD怎么设置权限,别人只能看图不能修改?多段线怎么取消显示线宽? cad迷你画图如何不让显示线宽 东莞证券股票代码 cad如何只显示一条线的宽度 关于&quot;预防冬季流行性疾病&quot;手抄报 幼儿班冬季防疾病安全手抄报多画少写字 Raytek Raynger ST红外测温仪使用说明 雷泰红外测温仪使用说明书 掉色严重的牛仔裤可以穿吗 牛仔裤掉色穿了对身体会不好吗 华为畅享9为什么没有应用助手? 华为畅享9plus,没有应用助手这个图标,权限都打开了? 给宝贝买的牛仔裤总是掉色可以穿吗 华为畅享9Plus辅助功能在哪里? 青少年如何减肥,增高