当前位置:首页 > 2007-2011年noip初赛提高组试题及答案
A. B. C. D.
多任务操作系统专用于多核心或多个CPU架构的计算机系统的管理。
在操作系统的管理下,一个完整的程序在运行过程中可以被部分存放在内存中。
分时系统让多个用户可以共享一台主机的运算能力,为保证每个用户都得到及时的响应通常会采用时间片轮转调度的策略。
为了方便上层应用程序的开发,操作系统都是免费开源的。
4、关于计算机网络,下面的说法哪些是正确的:
A) B) C) D)
5、关于HTML下面哪些说法是正确的:
A) B) C) D)
6、若3个顶点的无权图G的邻接矩阵用数组存储为{{0,1,1},{1,0,1},{0,1,0}},假定在具体存
储中顶点依次为: v1,v2,v3 关于该图,下面的说法哪些是正确的: A) B) C) D)
7、在带尾指针(链表指针clist指向尾结点)的非空循环单链表中每个结点都以next字段的指针指向下一
个节点。假定其中已经有2个以上的结点。下面哪些说法是正确的: A) 如果p指向一个待插入的新结点,在头部插入一个元素的语句序列为:
p^.next:= clist^.next; clist^.next:= p;
B) 如果p指向一个待插入的新结点,在尾部插入一个元素的语句序列为:
p^.next:= clist; clist^.next:= p; C) 在头部删除一个结点的语句序列为:
p:= clist^.next; clist^.next:= clist^.next^.next; dispose(p); D) 在尾部删除一个结点的语句序列为。
p:= clist; clist:= clist ^.next; dispose(p);
8、散列表的地址区间为0-10,散列函数为H(K)=K mod 11。采用开地址法的线性探查法处理冲突,并将关
键字序列26,25,72,38,8,18,59存储到散列表中,这些元素存入散列表的顺序并不确定。假定之前散列表为空,则元素59存放在散列表中的可能地址有: A) 5 B) 7 C) 9 D) 10
9、排序算法是稳定的意思是关键码相同的记录排序前后相对位置不发生改变,下列哪些排序算法是稳定的:
该图是有向图。 该图是强连通的。
该图所有顶点的入度之和减所有顶点的出度之和等于1。
从v1开始的深度优先遍历所经过的顶点序列与广度优先的顶点序列是相同的。 HTML全称超文本标记语言,实现了文本、图形、声音乃至视频信息的统一编码。 HTML不单包含有网页内容信息的描述,同时也包含对网页格式信息的定义。 网页上的超链接只能指向外部的网络资源,本网站网页间的联系通过设置标签来实现。 点击网页上的超链接从本质上就是按照该链接所隐含的统一资源定位符(URL)请求网络资源或网络服务。
网络协议之所以有很多层主要是由于新技术需要兼容过去老的实现方案。 新一代互联网使用的IPv6标准是IPv5标准的升级与补充。
TCP/IP是互联网的基础协议簇,包含有TCP和IP等网络与传输层的通讯协议。
互联网上每一台入网主机通常都需要使用一个唯一的IP地址,否则就必须注册一个固定的域名来标明其地址。
A) 插入排序 B) 基数排序 C) 归并排序 D) 冒泡排序
10、在参加NOI系列竞赛过程中,下面哪些行为是被严格禁止的:
A) B) C) D)
三.问题求解(共2题,每空5分,共计10分)
1.拓扑排序是指将有向无环图G中的所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若 ∈E(G),则u在线性序列中出现在v之前,这样的线性序列成为拓扑序列。如下的有向无环图,对其顶点做拓扑排序,则所有可能的拓扑序列的个数为 。
携带书写工具,手表和不具有通讯功能的电子词典进入赛场。
在联机测试中通过手工计算出可能的答案并在程序里直接输出答案来获取分数。 通过互联网搜索取得解题思路。
在提交的程序中启动多个进程以提高程序的执行效率。
2 5 6 8 1 4 7 9
2.某个国家的钱币面值有1, 7, 72, 73共计四种,如果要用现金付清10015元的货物,假设买卖双方各
3 种钱币的数量无限且允许找零,那么交易过程中至少需要流通 张钱币。
四.阅读程序写结果(共4题,每题8分,共计32分) 1.
var
a, b: integer;
function work(a, b: integer): integer; begin
if a mod b <> 0 then
work := work(b, a mod b)
else end; begin
read(a, b);
writeln(work(a, b));
work := b;
end. 输入:123 321 输出:_________ 2.
var
a, b: array[0..3] of integer; i, j, tmp: integer; begin
for i := 0 to 3 do
read(b[i]);
for i := 0 to 3 do begin
a[i] := 0;
for j := 0 to i do begin
inc(a[i], b[j]);
inc(b[a[i] mod 4], a[j]);
end;
end; tmp := 1;
for i := 0 to 3 do begin
a[i] := a[i] mod 10; b[i] := b[i] mod 10;
tmp := tmp * (a[i] + b[i]);
end;
writeln(tmp); end.
输入:2 3 5 7 输出:_______________ 3. const y = 2009; maxn = 50; var
n, i, j, s: longint;
c: array[0..maxn, 0..maxn] of longint; begin s := 0; read(n); c[0, 0] := 1; for i := 1 to n do begin
c[i, 0] := 1;
for j := 1 to i - 1 do
c[i, j] := c[i-1, j-1] + c[i-1, j]; c[i, i] := 1;
end;
for i := 0 to n do end.
输入:17 输出: 4. var
n, m, i, j, k, p: integer; a, b: array[0..100] of integer; begin
read(n, m); a[0] := n; i := 0; p := 0; k := 0; repeat
for j := 0 to i - 1 do
if a[i] = a[j] then begin
p := 1; k := j; break;
s := (s + c[n, i]) mod y;
write(s);
end; break;
if p <> 0 then b[i] := a[i] div m;
a[i+1] := (a[i] mod m) * 10;
共分享92篇相关文档