NOIP历届(2007-2008)提高组 初赛 C语言 试题
NOIP初赛试题提高组C语言
2.已知 a, b, c, d, e, f, g 七个人中, a 会讲英语; b 会讲英语和汉语; c 会讲英语、意大利语和俄语; d 会讲汉语和日语; e 会讲意大利语和德语; f 会讲俄语、日语和法语; g 会讲德语和法语。
能否将他们的座位安排在圆桌旁,使得每个人都能与他身边的人交谈?如果可以,请以“ a b ”开头写出你的安排方案: 。
.答: a b d f g e c第十一届(2005)a-b-d-fc-e-g-f g-e-c-f第十二届(2006)三.问题求解(共 2 题,每题 5 分,共计10 分)1.将2006 个人分成若干不相交的子集,每个子集至少有3 个人,并且:(1)在每个子集中,没有人认识该子集的所有人。
(2)同一子集的任何 3 个人中,至少有2 个人互不认识。
(3)对同一子集中任何 2 个不相识的人,在该子集中恰好只有 1 个人认识这两个人。
则满足上述条件的子集最多能有___________个?分析:要使子集数最多,每一子集的人数应最少。
每一子集的人数为3,不符合要求,为4也不符合要求,为5可符合要求。
2.将边长为n 的正三角形每边n 等分,过每个分点分别做另外两边的平行线,得到若干个正三角形,我们称为小三角形。
正三角形的一条通路是一条连续的折线,起点是最上面的一个小三角形,终点是最下面一行位于中间的小三角形。
在通路中,只允许由一个小三角形走到另一个与其有公共边的且位于同一行或下一行的小三角形,并且每个小三角形不能经过两次或两次以上(图中是n=5 时一条通路的例子)。
设n=10,则该正三角形的不同的通路的总数为_____________。
分析与解:如果n=2,存在的不同的通路总数为1如果n=3,存在的不同的通路总数为2=1*2=2!如果n=4,存在的不同的通路总数为6=1*2*3=3!如果n=5,存在的不同的通路总数为24=1*2*3*4=4!……如果n=10,存在的不同的通路总数为9!第十三届(2007)三.问题求解(共2 题,每题5 分,共计10 分)1.给定n 个有标号的球,标号依次为1,2,…,n。
NOIP 初赛提高组C 试题及答案
merge(); } cout<<ans<<endl; }
(1) 输入:8 输出:_________(4 分) (2) 输入:2012 输出:_________(4 分)
4. #include <iostream> #include <string> using namespace std;
一、单项选择题(共 10 题,每题 1.5 分,共计 15 分;每题有且仅有一个正确选 项)
1. 目前计算机芯片(集成电路)制造的主要原料是(
出的物质。
A. 硅
B. 铜
C. 锗
),它是一种可以在沙子中提炼 D. 铝
2. ( )是主要用于显示网页服务器或者文件系统的 HTML 文件内容,并让用户与这些
←→
瑞典驻英国大使
D. 体育比赛中,每一级比赛的优胜者晋级上一级比赛
第4层
奥运会
↑
第3层
全运会
↑
第2层
省运会
↑
第1层
市运会
5. 如果不在快速排序中引入随机化,有可能导致的后果是( )。
A. 数组访问越界
B. 陷入死循环
C. 排序结果错误
D. 排序时间退化为平方级
6. 1946 年诞生于美国宾夕法尼亚大学的 ENIAC 属于( )计算机。
1. #include <iostream> using namespace std;
int n, i, temp, sum, a[100];
int main() {
NOIP提高组初赛历年试题及答案选择题篇
NOIP提高组初赛历年试题及答案选择题篇单项选择题(共10-15题,每题1.5分,共计15-22.5分。
每题有且仅有一个正确选项。
)注:答案在末尾NOIP2011-1.在二进制下,1011001+()=1100110。
同普及组NOIP2011-1 A.1011 B.1101 C.1010 D.1111NOIP2011-2.字符“A”的ASCII码为十六进制41,则字符“Z”的ASCII码为十六进制的()。
A.66B.5AC.50D.视具体的计算机而定NOIP2011-3.下图是一棵二叉树,它的先序遍历是()。
A.ABDEFCB.DBEFACC.DFEBCAD.ABCDEFNOIP2011-4.寄存器是()的重要组成部分。
同普及组NOIP2011-6A.硬盘B.高速缓存C.内存D.中央处理器(CPU)NOIP2011-5.广度优先搜索时,需要用到的数据结构是()。
同普及组NOIP2011-11A.链表B.队列C.栈D.散列表NOIP2011-6.在使用高级语言编写程序时,一般提到的“空间复杂度”中的空间是指()。
同普及组NOIP2011-12A.程序运行时理论上所占的内存空间B.程序运行时理论上所占的数组空间C.程序运行时理论上所占的硬盘空间D.程序源文件理论上所占的硬盘空间NOIP2011-7.应用快速排序的分治思想,可以实现一个求第K大数的程序。
假定不考虑极端的最坏情况,理论上可以实现的最低的算法时间复杂度为()。
A.O(n2) B.O(n log n) C.O(n) D.O(1)NOIP2011-8.为解决web应用中的不兼容问题,保障信息的顺利流通,()制定了一系列标准,涉及HTML、XML、CSS等,并建议开发者遵循。
A.微软B.美国计算机协会(ACM)C.联合国教科文组织D.万维网联盟(W3C)NOIP2011-9.体育课的铃声响了,同学们都陆续的奔向操场,按老师的要求从高到低站成一排。
历年NOIP提高组试题难度列表
NOIP2008-D
NOIP2009-A
NOIP2009-B
火柴棒等式 模拟
传纸条 双栈排序
动态 规划
构造
潜伏者 模拟
Hankson的 趣味题
数学
枚举,优化/开表 0.8
历届搜索
题一般都比较
多维状态DP 0.7 难,搜索算法
本身简单,于
枚举,贪心/二分 图
0.4
是题目会提高
选手对其他方
模拟
【构造】
动态 规划
构 造, 贪心
多维DP
BFS/贪心,并查 集
平均难度系 数:0.27
构造类题 目一般没有明 确的算法,需
NOIP2010-D
引水入城
搜索 BFS
要选手仔细分 析题目的实
质,并得出解法。
这个解法通常不是唯一的。有时一个好的贪心可以得相当
多的分。有时搜索剪枝可以很大的提高效率。同样以多得分为
需要掌握
模拟,字符串
质数及其性 0.8 质,基础的实
子序列DP,贪心 优化
0.2
数操作,加法 原理和乘法原
置换群,贪心 0.2 理。此类题需
字符串,抽样检 测,表达式
区间环DP
要选手对数学 0.3 规律的灵感。
【图论】 0.6 平均难度系
资源分配DP,构 造
0.6
数:0.50 历届考察
模拟
动态规划/组合 数学,高精度
金明的预算 动态
方案
规划
作业调度方 案
模拟
2^k进制数
动态 规划
统计数字 模拟
字符串的展 开
模拟
矩阵取数游 动态
戏
规划
树网的核 图论
NOIP提高组初赛历年试题及答案完善题篇
for (i = m; i>= 1; i--){
used[data[i]] = false;
for (j =data[i]+1; j <= n; j++) if (!used[j]){
used[j] =true;
data[i] = j;
flag = true;
break;
}
if (flag)
{
for (k = i+1;k <= m; k++)
solve(left, j –1, deep + 1);
if(j<right)
solve(j+ 1, right, deep + 1);
}
int main()
{
inti;
cin>>n;
for(i=1;i<=n;i++)
cin>>a[i];
maxDeep=0;
solve(1,n,1);
cout<<maxDeep<<' '<<num<<endl;
}
void push()
for (j = 1; j<=n; j++) if (!used[j]){
data[k] = j;
used[j] =true;
break;
}
break;
}
}
}
}
NOIP2012-2.新壳栈 小 Z 设计了一种新的数据结构“新壳栈”。首先,它和传统的栈一样支持压入、弹 出操作。此外,其栈顶的前 c 个元素是它的壳,支持翻转操作。其中,c> 2 是 一个固定的正整数,表示壳的厚度。小 Z 还希望,每次操作,无论是压入、弹 出还是翻转,都仅用与 c 无关的常数时间完成。聪明的你能帮助她编程实现“新 壳栈”吗? 程序期望的实现效果如以下两表所示。其中,输入的第一行是正整数 c,之后每 行输入都是一条指令。另外,如遇弹出操作时栈为空,或翻转操作时栈中元素不 足 c 个,应当输出相应的错误信息。
2007-2011年noip初赛提高组试题及答案
第十七届全国青少年信息学奥林匹克联赛初赛试题(提高组 Pascal语言两小时完成)●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(共20题,每题1.5分。
共计30分。
每题有且仅有一个正确选项。
)1.在二进制下,1100011 +()= 1110000。
A.1011 B.1101 C.1010 D.11112.字符“A”的ASCII码为十六进制41,则字符“Z”的ASCII码为十六进制的()。
A.66 B.5A C.50 D.视具体的计算机而定3.右图是一棵二叉树,它的先序遍历是()。
A.ABDEFC B.DBEFAC C.DFEBCA D.ABCDEF4.寄存器是()的重要组成部分。
A.硬盘B.高速缓存C.内存D.中央处理器(CPU)5.广度优先搜索时,需要用到的数据结构是()。
A.链表B.队列C.栈D.散列表6.在使用高级语言编写程序时,一般提到的“空间复杂度”中的“空间”是指()。
A.程序运行时理论上所占的内存空间B.程序运行时理论上所占的数组空间C.程序运行时理论上所占的硬盘空间D.程序源文件理论上所占的硬盘空间7.应用快速排序的分治思想,可以实现一个求第K大数的程序。
假定不考虑极端的最坏情况,理论上可以实现的最低的算法时间复杂度为()。
A.O(n2)B.O(n log n)C.O(n) D.O(1)8.为解决Web应用中的不兼容问题,保障信息的顺利流通,()制定了一系列标准,涉及HTML、XML、CSS等,并建议开发者遵循。
A.微软 B.美国计算机协会(ACM) C.联台国教科文组织D.万维网联盟(W3C)9.体育课的铃声响了,同学们都陆续地奔向操场,按老师的要求从高到矮站成一排。
每个同学按顺序来到操场时,都从排尾走向排头,找到第一个比自己高的同学,并站在他的后面。
这种站队的方法类似于()算法。
A.快速排序B.插入排序C.冒泡排序D.归并排序10.1956年()授予肖克利(William Shockley)、巴丁(John Bardeen)和布拉顿(Walter Brattain),以表彰他们对半导体的研究和晶体管效应的发现。
noip提高组c初赛试题与答案
2009 第十五届全国青少年信息学奥林匹克联赛初赛试题提高组 C++ 语言 二小时完成 )全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效. 单项选择题 (共 10 题,每题分,共计 15 分。
每题有且仅有一个正确答 案。
)1、关于图灵机下面的说法哪个是正确的:图灵机是英国人图灵发明的,在二战中为破译德军的密码发挥了重要作 用。
2、关于BIOS 下面的说法哪个是正确的:BIOS 里包含了键盘、鼠标、声卡、图形界面显器等常用输入输出设备的 驱动程序。
BIOS 能提供各种文件拷贝、复制、删除以及目录维护等文件管理功能。
3、已知大写字母A 的ASCII 编码为65(十进制),则大写字母J 的 十六进制ASCII 编码为:4、在字长为 16位的系统环境下,一个 16位带符号整数的二进制补码为 101。
其对应的十进制整数应该是:n 个分支结点(非叶结点)的非空满 k 叉树,k>=1,它的叶结点数 B) nk-1 C) (k+1)n-1 D. (k-1)n+16. 表达式 a*(b+c )-d 的后缀表达式是:A) abcd*+- B) abc+*d- C) abc*+d- D) -+*abcd7、最优前缀编码,也称 Huffman 编码。
这种编码组合的特点是对于较频繁使用 的元素给与较短的唯一编码,以提高通讯的效率。
下面编码组合哪一组不是 合法的前缀编码。
A )(00, 01, 10, 11)A) 图灵机是世界上最早的电子计算机。
B) 由于大量使用磁带操作,图灵机运行速度很慢。
C) 图灵机只是一个理论上的计算模型。
D) A) BIOS 是计算机基本输入输出系统软件的简称。
B) C) BIOS 一般由操作系统厂商来开发完成。
D) A) 48 B) 49 C) 50 D)以上都不是 A) 19 B) -19 C) 18 D) -185、一个包含目为:A) nk + 1B ) (0,1,00,11)C )(0,10,110,111)D )(1,01,000,001)8、快速排序平均情况和最坏情况下的算法时间复杂度分别为:9、右图给出了一个加权无向图, 从顶点 V 0 开始用 prim 算法求最 小生成树。
NOIP2008提高组初赛试题_C++含答案 改动-推荐下载
典型的 Web2.0 应用。
A. Sina B. Flickr C. Yahoo
D. Google
15. (2008)10 + (5B)16 的结果是( )。 A. (833)16 B. (2099)10 C. (4063)8 D. (100001100011)2
16. 二叉树 T,已知其先根遍历是 1 2 4 3 5 7 6(数字为结点的编号,以下同),后根遍历是 4
b,d,c,f,e,a,则栈 S 的容量至少应该是( )。
A. 6
B. 5
C. 4
D. 3
7. 与十进制数 28.5625 相等的四进制数是( )。
E. 2
A. 123.21 B. 131.22 C. 130.22 D. 130.21 E. 130.20
8. 归过程或函数调用时,处理参数和返回地址,通常使用一种称为()的数据结构。
A. 链路层 B.网络层 C. 传输层 D. 应用层 E.会话层 10. 对有序数组{5, 13, 19, 21, 37, 56, 64, 75, 88, 92, 100}进行二分查找,等概 率的情况下查找成功的平均查找长度(平均比较次数)是( )。
A. 35/11 B. 34/11 C. 33/11 D. 32/11 E. 34/10 二、 不定项选择题 (共 10 题,每题 1.5 分,共计 15 分。每题正确答案的个数大于或等于 1。多 选或少选均不得分)。
2 7 5 6 3 1,则该二叉树的可能的中根遍历是( )。
A. 4 2 1 7 5 3 6
B. 2 4 1 7 5 3 6
C. 4 2 1 7 5 6 3
D. 2 4 1 5 7 3 6
17. 面向对象程序设计(Object-Oriented Programming)是一种程序设计的方法论,它将对
最新NOIP初赛试题c语言答案资料
一、单项选择题:(每题1.5分)
1. D 2. E 3. D 4. B 5. A
6. B 7. D 8. B 9. D 10. A
二、不定项选择题(共10题,每题1.5分得分)。
11. ABC 12. AD 13. ABD 14. ABD 15. BC
q[3]=q[0]*q[1];// q[3]=13*8=104
q[4]=q[1]+q[2]+q[3];//q[4]=8+7+104=119
据上述部分的分析可见,我校学生就达4000多人。附近还有两所学校,和一些居民楼。随着生活水平的逐渐提高,家长给孩子的零用钱也越来越多,人们对美的要求也越来越高,特别是大学生。他们总希望自己的无论是衣服还是首饰都希望与众不同,能穿出自己的个性。但在我们美丽的校园里缺少自己的个性和琳琅满目的饰品,所以我们的小饰品店存在的竞争力主要是南桥或是市区的。这给我们小组的创业项目提供了一个很好的市场机会。x=(q[0]+q[4]+2)-p[(q[3]+3)%4];//x=(13+119+2)-p[(36+3)%4]=134-5=129
⑤<= 1
2①x[i-2]*(m-1)
②j+x[i-1]*k
③j+x[i-1]*k(同2)
④r-1
⑤x[i-1]+1
⑥backtrace(i+1,r)
四、
1、6 6 5 5 3
2、Google网站www。people。com。cn#include <stdio.h>
新材料手工艺品。目前,国际上传统的金银、仿金银制成饰品的销售在逐步下降,与此形成鲜明对比的是,数年以前兴起的崇尚然风格、追求个性的自制饰品--即根据自己的创意将各种材质的饰珠,用皮、布、金属等线材串出的品,正在各国的女性中大行其道。int main()
NOIP2008第十四届全国青少年信息学奥林匹克联赛初赛试题(含答案)汇总
2008第十四届全国青少年信息学奥林匹克联赛初赛试题(提高组 C 语言二小时完成)●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(共10题,每题1.5分,共计15分。
每题有且仅有一个正确答案)。
1. 在以下各项中,()不是操作系统软件。
Symbian2.微型计算机中,控制器的基本功能是()。
A. 控制机器各个部件协调工作B. 实现算术运算和逻辑运算C. 存储各种控制信息D. 获取外部信息3. 设字符串S=”Olympic”,S的非空子串的数目是()。
A. 29B. 28C. 16D. 17E. 74.完全二叉树共有2*N-1个结点,则它的叶节点数是()。
A. N-1B. 2*NC. ND. 2N-1E. N/25.将数组{8, 23, 4, 16, 77, -5, 53, 100}中的元素按从大到小的顺序排列,每次可以交换任意两个元素,最少需要交换()次。
A. 4B. 5C. 6D. 7E. 86.设栈S的初始状态为空,元素a,b,c,d,e,f依次入栈S,出栈的序列为b,d,c,f,e,a,则栈S的容量至少应该是()。
A. 6B. 5C. 4D. 3E. 27. 与十进制数28.5625相等的四进制数是()。
A. 123.21B. 131.22C. 130.22D. 130.21E. 130.208.递归过程或函数调用时,处理参数和返回地址,通常使用一种称为()的数据结构。
A. 队列B. 多维数组C. 线性表D. 链表E. 栈1 A. Solaris B. Linux C. Sybase D. Windows Vista E. E. 存放程序和数据9. TCP/IP是一组构成互联网基础的网络协议,字面上包括两组协议:传输控制协议(TCP)和网际协议(IP)。
TCP/IP 协议把Internet网络系统描述成具有四个层次功能的网络模型,其中提供源节点和目的节点之间的信息传输服务,包括寻址和路由器选择等功能的是()。
历年NOIP(普及组提高组)试题难度列表
历年NOIP(普及组)难度分析 by Climber.pINOIP提高组复赛考察点详细分析动态规划:12 模拟:10数学:5 图论:4搜索:4 构造:3贪心:2【动态规划】平均难度系数:0.55此项为历届NOIP考察次数最多的知识点。
主要有 1.区间模型 2.子序列模型 3.资源分配模型以及一些简单的多维状态设计技巧。
动态规划可以与图,树,高精度等知识点配合出题。
【模拟】平均难度系数:0.76平均每届NOIP都会出现1个模拟题。
这种题一般算法很简单,需要选手细心理解题目意思,注意细节。
考察选手的代码实现能力。
【数学】平均难度系数:0.46需要掌握质数及其性质,基础的实属操作,加法原理和乘法原理。
此类题需要选手对数学规律的灵感。
【图论】平均难度系数:0.50历届考察点基本上都是 1.最短路问题和 2.特殊图的性质。
特殊图包括树,拓扑图,二分图等。
历届NOIP在图论上的考察并不是很多。
【搜索】平均难度系数:0.38历届搜索题一般都比较难,搜索算法本身简单,于是题目会提高选手对其他方面的要求。
主要有搜索优化和模拟。
写搜索题时应该以尽量多得分为目标。
【构造】平均难度系数:0.27构造类题目一般没有明确的算法,需要选手仔细分析题目的实质,并得出解法。
这个解法通常不是唯一的。
有时一个好的贪心可以得相当多的分。
有时搜索剪枝可以很大的提高效率。
同样以多得分为目标。
【【贪心】平均难度系数:0.75此类题需要选手对算法的直觉,贪心正确性一旦被证明,通常题目就简单了。
NOIP2007提高组试题及解析
NOIP2007提高组试题及解析1.统计数字(count.pas/c/cpp)【问题描述】某次科研调查时得到了n个自然数,每个数均不超过(1.5*109)。
已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。
【输入】输入文件count.in包含n+1行;第一行是整数n,表示自然数的个数;第2~n+1每行一个自然数。
【输出】输出文件count.out包含m行(m为n个自然数中不相同数的个数),按照自然数从小到大的顺序输出。
每行输出两个整数,分别是自然数和该数出现的次数,其间用一个空格隔开。
【输入输出样例】count.in8242451002100count.out2 34 25 1100 2【限制】40%的数据满足:1<=n<=100080%的数据满足:1<=n<=50000100%的数据满足:1<=n<=,每个数均不超过1500 000 000(1.5*109)【解题思想1】显然,此题可以用排序的方法来解决,根据n的范围,可以看出,O(nlogn)的算法是可以接受的。
【解题思想2】维护一个二叉树,以数的大小作为节点的权值,以数的重复次数作为节点的附加信息。
之后中序遍历即可。
看起来,树内的节点个数应该不到n,所以可能表现不错,其算法复杂度依然为O(nlogn)【实际数据规模】挺小的,而且也没有传说中的卡Qsort的数据,全部都很温柔。
【分析】这个题目实在不能说是一道TG组的好题。
实际上,个人认为题目最大的意义在于:提供了10个测试排序算法的不怎么特别好的数据。
话说回来,此题是送分题,但是送分题送的这么水,考察的也就只有OIers的细心程度了。
在考试的时候,要相信有简单的题目,要相信有直接的算法。
在我的身边就有几个同学因为这个题目与一等失之交臂,这是最可惜的事情。
var a:array[1..] of longint;i,j,k,m,n:longint;procedure qsort(s,t:longint);var i,j,mid,temp:longint;begini:=s;j:=t;mid:=a[(s+t) div 2];while i<=j dobeginwhile a[i]<mid do inc(i);while a[j]>mid do dec(j);if i<=j thenbegintemp:=a[i];a[i]:=a[j];a[j]:=temp;inc(i);dec(j);end;end;if i<t then qsort(i,t);if j>s then qsort(s,j);end;beginreadln(n);for i:=1 to n do readln(a[i]);qsort(1,n);a[n+1]:=maxlongint;k:=1;for i:=2 to n+1 doif a[i]<>a[i-1] thenbegin writeln(a[i-1],' ',k); k:=1;endelse k:=k+1;end.2.字符串的展开(expand.pas/c/cpp)【问题描述】在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或者“4-8”的字串,我们就把它当作一种简写,输出时,用连续递增的字母获数字串替代其中的减号,即,将上面两个子串分别输出为“defgh”和“45678”。
(word完整版)NOIP提高组初赛历年试题及答案阅读题篇,.docx
(word完整版)NOIP提高组初赛历年试题及答案阅读题篇,.docxNOIP 提高组初赛历年试题及答案阅读题篇程序写果(共 4 ,每 8 分,共 32 分)程序的最好方法并非是依次从到尾。
程序不像迷,我无法从末尾几找到答案,也不像一本引人入的籍,只需直接翻到褶最多的那几,我就能找到最精彩的片断。
因此我在程序,最好逐一考察研究每一段代,搞清楚每一段代的来去脉,理解每一段代在程序中所起的作用,而形成一个虚的程序构,并以此基来行。
1、分:高入手,逐深入,正确理解程序。
2、写注解:固化、、提已有的理解成果。
3、先模:根据代序跟踪量,模运算。
4、找律:先模几次循后,找出背后的律。
5、看功能:从代构和运算果判断程序功能。
6、猜算法:有不知道算法,通构和函数猜一猜。
7、方法:了解程序本后,一个熟悉的方法。
大多数人来,写程序是令人开心的一件事情,人的程序却很痛苦,很恐惧,宁愿自己重写一遍。
其到好的程序,就像一篇美文,令人心神怡,豁然开朗,因背后是一个人的思,甚至整个人生。
人的程序不可以巩固自己的知,启自己的思,提升自己的修养,你收,其,也是在学、在、在工作中的最重要、最常用的基本功。
如果写程序是把自己的思化代,程序就是把代化你理解的人的思。
当你程序有烈的代入感,像演一,真正入到的精神世界,面部表情也随之日丰富起来。
祝你!你通关了!之,看得多,得多,拼得多,你就考得多??NOIP2011-1 .#include#includeusing namespace std;const int SIZE = 100;int main(){int n,i,sum,x,a[SIZE];cin>>n;memset(a,0,sizeof(a));for(i=1;i<=n;i++){cin>>x;a[x]++;}i=0;sum=0;while(sum<(n/2+1)){i++;sum+=a[i];}cout<<i<<endl;< p="">return 0;}输入:114 5 6 6 4 3 3 2 3 2 1一步步模拟,注意输出的是sum超出循环条件时的i 值(中位数),而不是sum ,也不是a[x]输出: 3NOIP2011-2 .#include using namespace std; int n;void f2(int x,int y); void f1(int x,int y){if(x<n)< p="">f2(y,x+y);}void f2(int x,int y){cout<<x<<' ';<="" p="">f1(y,x+y);}int main(){cin>>n;f1(0,1);return 0;}输入: 30此为简单的递归题,依次输出f2(x,y)中的x值,注意边界条件时f1(x,y)的x>=30咦!这不是隔一个输出一个的Fibonacci吗?输出: 1 2 5 13 34 NOIP2011-3 .#includeusing namespace std; const int V=100;int n,m,ans,e[V][V];bool visited[V];void dfs(int x,intlen){int i;visited[x]= true;if(len>ans)ans=len;for(i=1;i<=n;i++)if( (!visited[i]) &&(e[x][i]!=-1) ) dfs(i,len+e[x][i]); visited[x]=false;}int main(){int i,j,a,b,c;cin>>n>>m;for(i=1;i<=n;i++)for(j=1;j<=m;j++)e[i][j]=-1;for(i=1;i<=m;i++){cin>>a>>b>>c;e[a][b]=c;e[b][a]=c;}for(i=1;i<=n;i++)visited[i]=false;ans=0;for(i=1;i<=n;i++)dfs(i,0);cout<<ans<<endl;< p="">return 0;}输入:4 61 2 102 3 203 4 304 1 401 3 502 4 60一看就知这是深搜算法(DFS ),输入是个四个顶点的无向图(邻接矩阵如下):如len>ans,则ans=len,可以说明这是个在图中用DFS找最长的路径的程序。
NoipXX初赛提高组C试题及答案(完整版)
NoipXX初赛提高组C试题及答案(完整版)Noipxx初赛提高组试题及答案(完整版)提高组C语言试题一、单项选择题(每题1.5分,共22.5分)。
1. 以下哪个是面向对象的高级语言( ). A. 汇编语言 B. C++ C. FORTRAN D. Basic2. 1TB代表的字节数量是( ). A. 2的10次方B. 2的20次方 C. 2的30次方 D. 2的40次方3. 二进制数00100100和00010101的和是( ). A. 00101000 B. 001010100 C. 01000101 D. 001110014. TCP协议属于哪一层协议( ). A. 应用层 B. 传输层 C. 网络层 D. 数据链路层 5. 以下几个32位IP地址中,书写错误的选项是( ). A. 162.105.128.27 B. 192.168.0.1 C. 256.256.129.1 D. 10.0.0.1 6. 在无向图中,所有定点的度数之和是边数的( )倍. A. 0.5 B. 1 C. 2 D. 4 7. 对长度位n的有序单链表,假设检索每个元素的概率相等,那么顺序检索到表中任一元素的平均检索长度为( ). A. n/2 B. (n+1)/2 C. (n-1)/2 D.n/4 8. 编译器的主要功能是( ). A. 将一种高级语言翻译成另一种高级语言 B. 将源程序翻译成指令 C. 将低级语言翻译成高级语言D. 将源程序重新组合 9. 二进制数111.101所对应的十进制数是( ). A. 5.625 B. 5.5 C. 6.125 D. 7.625 10. 假设有变量 int a, float x, y, 且 a=7, x=2.5, y=4.7, 那么表达式x+a%3*(int)(x+y)%2/4的值大约是( ). A. 2.500000 B. 2.750000 C. 3.500000 D. 0.000000 11. 有以下结构体说明和变量定义,如下图,指针p、q、r分别指向一个链表中的三个续结点。
NOIP2007 初赛试题及答案提高组C
NOIP2007 初赛试题(提高组C)2008-08-03 15:09分类:默认分类字号:大中小信息学奥赛试题NOIP2007 初赛试题(提高组C)© 中国计算机学会20071第十三届全国青少年信息学奥林匹克联赛初赛试题(提高组C 语言二小时完成)●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(共10 题,每题1.5 分,共计15 分。
每题有且仅有一个正确答案)。
1. 在以下各项中,()不是CPU 的组成部分。
A. 控制器B. 运算器C. 寄存器D. 主板E. 算术逻辑单元(ALU)2.在关系数据库中,存放在数据库中的数据的逻辑结构以()为主。
A. 二叉树B. 多叉树C.哈希表D. B+树E.二维表3.在下列各项中,只有()不是计算机存储容量的常用单位。
A. ByteB. KBC.MBD.UBE.TB4.ASCII 码的含义是()。
A. 二—十进制转换码B. 美国信息交换标准代码C. 数字的二进制编码D. 计算机可处理字符的唯一编码E. 常用字符的二进制编码5.在C 语言中,表达式23|2^5 的值是()A. 23B. 1C.18D.32E.246.在C 语言中,判断a 等于0 或b 等于0 或c 等于0 的正确的条件表达式是()A. !((a!=0)||(b!=0)||(c!=0))B. !((a!=0)&&(b!=0)&&(c!=0))C. !(a==0&&b==0)||(c!=0)D. (a=0)&&(b=0)&&(c=0)E. !((a=0)||(b=0)||(c=0))7.地面上有标号为A、B、C 的3 根细柱,在A 柱上放有10 个直径相同中间有孔的圆盘,从上到下依次编号为1,2,3,……,将A 柱上的部分盘子经过B 柱移入C 柱,也可以在B 柱上暂存。
如果B 柱上的操作记录为:“进,进,出,进,进,出,出,进,进,出,进,出,出”。
NOIP2007提高组初赛试题与答案
y+=20+(q[2]*100-q[3])/(p[p[4]%3]*5); printf("%d,%d\n", x,y); return 0;
© 中国计算机学会 2007
4
NOIP2007 初赛试题(提高组 C)
} /*注:本例中,给定的输入数据可以避免分母为 0 或数组元素下标越界。 */ 输入:6 6 5 5 3 输出:_______________
NOIP2007 初赛试题(提高组 C)
第十三届全国青少年信息学奥林匹克联赛初赛试题
( 提高组 C 语言 二小时完成 )
●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效 ●●
一、 单项选择题 (共 10 题,每题 1.5 分,共计 15 分。每题有且仅有一个正确答案)。
1. 在以下各项中,( )不是 CPU 的组成部分。
B.有些编译系统可以检测出死循环 C. 死循环属于语法错误,既然编译系统能检查各种语法错误,当然也应该能检查出死循环 D. 死循环与多进程中出现的“死锁”差不多,而死锁是可以检测的,因而,死循环也是可以检测 的 E. 对于死循环,只能等到发生时做现场处理,没有什么更积极的手段
二、 不定项选择题 (共 10 题,每题 1.5 分,共计 15 分。每题正确答案的个数大于或等于 1。多选 或少选均不得分)。
但这一点还没有得到理论上的证实,也没有被否定 D. 一个问题如果是NP类的,与C有相同的结论
20. 近20年来,许多计算机专家都大力推崇递归算法,认为它是解决较复杂问题的强有力的工具。在下 列关于递归算法的说法中,正确的是( )。
© 中国计算机学会 2007
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
NOIP历届(2007-2008)提高组初赛C语言试题提高组 C 语言二小时完成)●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(共10题,每题1.5分,共计15分。
每题有且仅有一个正确答案.)。
1. 在以下各项中。
()不是CPU的组成部分。
A. 控制器B. 运算器C. 寄存器D. ALUE. RAM2. BIOS(基本输入输出系统)是一组固化在计( )上一个ROM芯片上的程序。
A. 控制器B. CPUC. 主板D. 内存条E. 硬盘3. 在下面各世界顶级的奖项中,为计算机科学与技术领域作出杰出贡献的科学家设立的奖项是()。
A. 沃尔夫奖B. 诺贝尔奖C. 菲尔兹奖D. 图灵奖E. 南丁格尔奖4.在编程时(使用任一种高级语言,不一定是C),如果需要从磁盘文件中输入一个很大的二维数组(例如1000*1000 的double 型数组),按行读(即外层循环是关于行的)与按列读(即外层循环是关于列的)相比,在输入效率上()。
A. 没有区别B. 有一些区别,但机器处理速度很快,可忽略不计C. 按行读的方式要高一些D. 按列读的方式要高一些E. 取决于数组的存储方式。
5.在C语言中,表达式21^2的值是()A. 441B. 42C.23D.24E.256.在C语言中,判断a不等于0且b不等于0的正确的条件表达式是()A. !a==0 || !b==0 B. !((a==0)&&(b==0)) C. !(a==0&&b==0)D. a!=0 || b!=0E. a && b7.某个车站呈狭长形,宽度只能容下一台车,并且只有一个出入口。
已知某时刻该车站状态为空,从这一时刻开始的出入记录为:“进,出,进,进,进,出,出,进,进,出”。
假设车辆入站的顺序为1,2,3,……,则车辆出站的顺序为()。
A. 1, 2, 3, 4, 5B. 1, 2, 4, 5, 7C. 1, 4, 3, 7, 6D. 1, 4, 3, 7, 2E. 1, 4, 3, 7, 58.高度为n的均衡的二叉树是指:如果去掉叶结点及相应的树枝,它应该是高度为n-1的满二叉树。
在这里,树高等于叶结点的最大深度,根结点的深度为0,如果某个均衡的二叉树共有2381 个结点,则该树的树高为()。
A. 10B. 11C. 12D. 13E. 29. 与十进制数1770.625 对应的八进制数是()。
A. 3352.5B. 3350.5C. 3352.1161D. 3350.1151E. 前4个答案都不对10.将5个数的序列排序,不论原先的顺序如何,最少都可以通过()次比较,完成从小到大的排序。
A. 6B. 7C. 8D. 9E. 10二、不定项选择题(共10 题,每题1.5 分,共计15 分。
每题正确答案的个数大于或等于1。
多选或少选均不得分)。
11. 设A=B=D=true,C=E=false,以下逻辑运算表达式值为真的有()。
A. ( A∧B)∨(C∧D)∨B. (((A∧B)∨C)∧D∧E)C. A∧(B∨C∨D∨E)D. (A∧(B∨C)) ∧D∧E13. 设栈S的初始状态为空,元素a, b, c, d, e 依次入栈,以下出栈序列不可能出现的有()。
A. a, b, c, e, dB. b, c, a, e, dC. a, e, c, b, dD. d, c, e, b, a14. 已知6 个结点的二叉树的先根遍历是1 2 3 4 5 6(数字为结点的编号,以下同),后根遍历是3 2 5 6 4 1,则该二叉树的可能的中根遍历是()A. 3 2 1 4 6 5B. 3 2 1 5 4 6C. 2 3 1 5 4 6D. 2 3 1 4 6 515. 在下列各数据库系统软件中,以关系型数据库为主体结构的是()。
A. ACCESSB. SQL ServerC. OracleD. Foxpro16.在下列各软件中,属于NOIP竞赛(复赛)推荐使用的语言环境有()。
A. gcc/g++B. Turbo PascalC. Turbo CD. free pascal17. 以下断电之后将不能保存数据的有()。
A. 硬盘B. ROMC. 显存D. RAM18. 在下列关于计算机语言的说法中,正确的有()。
A. Pascal和C都是编译执行的高级语言B. 高级语言程序比汇编语言程序更容易从一种计算机移植到另一种计算机上C. C++是历史上的第一个支持面向对象的计算机D. 高级语言比汇编语言更高级,是因为它的程序的运行效率更高19. 在下列关于计算机算法的说法中,正确的有()。
A. 一个正确的算法至少要有一个输入B. 算法的改进,在很大程度上推动了计算机科学与技术的进步C. 判断一个算法的好坏,主要依据它在某台计算机上具体实现时的运行时间D. 目前仍然存在许多涉及到国计民生的重大课题,还没有找到能够在计算机上实施的有效算法20. 在下列关于青少年信息学竞赛的说法中,你赞成的是()(本题0分,答题一律满分)。
A. 举行信息学竞赛的目的,是为了带动广大青少年学科学、爱科学,为造就一大批优秀的计算机科学与技术人才奠定良好的基础B. 如果竞赛优胜者不能直接保送上大学,我今后就不再参与这项活动了C. 准备竞赛无非要靠题海战术,为了取得好成绩,就得拼时间、拼体力D. 为了取得好成绩,不光要看智力因素,还要看非智力因素。
优秀选手应该有坚韧不拔的意志,有严谨求实的作风,既要努力奋进,又要胜不骄败不馁三.问题求解(共2题,每题5分,共计10分)1.将2006个人分成若干不相交的子集,每个子集至少有3个人,并且:(1)在每个子集中,没有人认识该子集的所有人。
(2)同一子集的任何3个人中,至少有2个人互不认识。
(3)对同一子集中任何2个不相识的人,在该子集中恰好只有1个人认识这两个人。
则满足上述条件的子集最多能有___________个?2.将边长为n 的正三角形每边n 等分,过每个分点分别做另外两边的平行线,得到若干个正三角形,我们称为小三角形。
正三角形的一条通路是一条连续的折线,起点是最上面的一个小三角形,终点是最下面一行位于中间的小三角形。
在通路中,只允许由一个小三角形走到另一个与其有公共边的且位于同一行或下一行的小三角形,并且每个小三角形不能经过两次或两次以上(图中是n=5 时一条通路的例子)。
设n=10,则该正三角形的不同的通路的总数为_____________。
3四.阅读程序写结果(共4题,每题8分,共计32分)1. #include <stdio.h>int main(){int i,u[4],v[4],x,y=10;for(i=0;i<=3;i++)scanf("%d", &u);v[0]=(u[0]+u[1]+u[2]+u[3])/7;v[1]=u[0]/((u[1]-u[2])/u[3]);v[2]=u[0]*u[1]/u[2]*u[3];v[3]=v[0]*v[1];x=(v[0]+v[1]+2)-u[(v[3]+3)%4];if(x>10)y+= (v[2]*100-v[3])/(u[u[0]%3]*5);elsey+=20+(v[2]*100-v[3])/(u[v[0]%3]*5);printf("%d,%d\n", x,y);return 0;} /*注:本例中,给定的输入数据可以避免分母为0或下标越界。
*/ 输入:9 3 9 4输出:_______________2.#include <stdio.h>main(){long t;for (i=0;i<=4;i++){t=1;for(j=1;j<m;j++) t*=2;printf("%ld ",(t*2-1)*t);}printf("\n");}输出:____________________3.#include "stdio.h"#define N 7int fun1(char s[],char a,int n){int j;j=n;while(a<s[j] && j>0) j--;return j;}int fun2(char s[],char a,int n)j=1;while(a>s[j] && j<=n) j++;return j;}void main(){char s[N+1];int k,p;for(k=1;k<=N;k++)s[k]='A'+2*k+1;p=fun1(s,'M',N);printf(“%d\n”,p+fun2(s,'M',N));}输出:_____________4.#include <stdio.h>void digit(long n,long m){if(m>0)printf("%2ld",n%10);if(m>1)digit(n/10,m/10);printf("%2ld",n%10);}main(){long x,x2;5printf("Input a number:\n"); scanf("%ld",&x);x2=1;while(x2<x) x2*=10;x2/=10;digit(x,x2);printf("\n");}输入:9734526输出:______________________________五.完善程序(前5空,每空2分,后6空,每空3分,共28分)1.(选排列)下面程序的功能是利用递归方法生成从1到n(n<10)的n个数中取k(1<=k<=n)个数的全部可能的排列(不一定按升序输出)。
例如,当n=3,k=2时,应该输出(每行输出5个排列):12 13 21 23 32 31#include <stdio.h>int n,k,a[10];long count=0;void perm2(int j){int i,p,t;if( ①){for(i=k;i<=n;i++){count++;t=a[k]; a[k]=a; a=t;for( ②)printf("%1d",a[p]); /* "%1d"中是数字1,不是字母l */printf(" ");t=a[k];a[k]=a;a=t;if(count%5==0) printf("\n");}return;}for(i=j;i<=n;i++){t=a[j];a[j]=a;a=t;③;t=a[j]; ④;6}}main(){int i;printf("\nEntry n,k (k<=n):\n");scanf("%d%d",&n,&k);for(i=1;i<=n;i++) a=i;⑤;}2.(TSP问题的交叉算子)TSP问题(Traveling Salesman Problem)描述如下:给定n个城市,构成一个完全图,任何两城市之间都有一个代价(例如路程、旅费等),现要构造遍历所有城市的环路,每个城市恰好经过一次,求使总代价达到最小的一条环路。