1、(求字符的逆序)下面的程序的功能是输入若干行字符串,每输入一行,就按逆序输出该行,最后键入-1终止程序。
请将程序补充完整。
Program j401
type str1=string[100]
var line:str1kz:integer
procedure reverse(var s:str1)
var I,j:integert:char
begin
i:=1j:=length(s)
while (i<j) do begin
t:=s[i]s[i]:=s[j]s[j]:=t
_____①___________②______
end
end
begin
writeln(‘continue? -1 for end.’)
readln(kz)
while ( _____③______)do
begin
readln(line)
_____④_____
writeln(line)
writeln(‘continue? -1 for end.’)
readln(kz)
end
end.
①和②处之前是一个冒泡排序,所以应该把i递增、j递减,
即①inc(i)②dec(j)
题目中说以-1结束,所以③应填kz<>-1
之前的过程定义好了,所以④应填reverse(line)
2.木材加工题目描述:
木材厂有一些原木,现在想把这些木头切割成一些长度相同的小段木头,需要得到的小
段的数目是给定的。当然,我们希望得到的小段越长越好,你的任务是计算能够得到的小段
木头的最大长度。
木头长度的单位是cm。原木的长度都是正整数,我们要求切割得到的小段木头的长度
也是正整数。
输入:
第一行是两个正整数N和K(1 ≤ N ≤ 10000,1 ≤ K ≤ 10000),N是原木的数目,
K是需要得到的小段的数目。
接下来的N行,每行有一个1到10000之间的正整数,表示一根原木的长度。
输出:
输出能够切割得到的小段的最大长度。如果连1cm长的小段都切不出来,输出”0”。
输入样例:
3 7
232
124
456
输出样例:
114
程序:
#include <stdio.h>
int n, k, len[10000]
int isok(int t) {
int num = 0, i
for (i = 0i <ni++) {
if (num >= k) break
num = ①
}
if ( ② ) return 1
else return 0
}
int main() {
int i, left, right, mid
scanf("%d%d", &n, &k)
right = 0
for (i = 0i <ni++) {
scanf("%d", &(len))
if (right <len) right = len
}
right++
③
while ( ④ <right) {
mid = (left + right) / 2
if ( ⑤ ) right = mid
else left = mid
}
printf ("%d\n", left)
return 0
}
全国青少年信息学奥林匹克联赛(National Olympiad in Informatics in Provinces,简称NOIP)自1995年至2020年已举办25次。每年由中国计算机学会统一组织。 NOIP在同一时间、不同地点以各省市为单位由特派员组织。全国统一大纲、统一试卷。初、高中或其他中等专业学校的学生可报名参加联赛。联赛分初赛和复赛两个阶段。初赛考察通用和实用的计算机科学知识,以笔试形式进行。复赛为程序设计,须在计算机上调试完成。参加初赛者须达到一定分数线后才有资格参加复赛。联赛分普及组和提高组两个组别,难度不同,分别面向初中和高中阶段的学生。
考试内容
.计算机的基本组成;
.计算机 *** 作系统使用(Windows,Linux等);
.计算机工作的基本原理;
.计算机程序设计的基本方法;
.至少一门高级程序设计语言(非图形化)(Pascal(2022年将被全部取消 [4] )/C(2022年将被部分取消)/C++等);
.程序设计中常用的数据结构(指针、多维数组、单链表及循环链表、二叉树等)。
普及的重点是根据中学生的特点,培养学生学习计算机的兴趣,使得他们对信息技术的一些本质和核心的东西有更多的了解,提高他们创造性地运用程序设计知识解决实际问题的能力。
对学生的能力培养注重
.想象力与创造力;
.对问题的理解和分析能力;
.数学能力和逻辑思维能力;
.对客观问题和主观思维的口头和书面表达能力;
.人文精神。包括与人的沟通和理解能力,团队精神与合作能力,恒心和毅力,审美能力等。考试流程
初试
初试全部为笔试,满分100分。试题由四部分组成:
1、选择题:共20题,每题1.5分,共30分。每题有4个备选答案。试题内容包括计算机基本组成与原理、计算机基本 *** 作、信息科技与人类社会发展的关系等等。(普及组为20道单选题,提高组为15道单选题和5道不定项选择题,不定项选择题与答案完全一致才得分,多选或少选均不得分)
2、问题求解题:共2题,每题5分,共10分。试题给出一个叙述较为简单的问题,要求学生对问题进行分析,找到一个合适的算法,并推算出问题的解。答案以字符串方式给出,考生给出的答案与标准答案的字符串相同,则得分;否则不得分。
3、程序阅读理解题:共4题,每题8分,共32分。题目给出一段程序(没有关于程序功能的说明),有时也会给出程序的输入,要求考生通过阅读理解该段程序给出程序的输出。输出以字符串的形式给出,如果与标准答案一致则得分,否则不得分。
4、程序完善题:共2题,第一题14分,共5空;第二题14分,共5空。两题共28分。题目给出一段关于程序功能的文字说明,然后给出一段程序代码,在代码中略去了若干个语句并在这些位置给出空格,要求考生根据程序的功能说明和代码的上下文,填出被略去的语句。填对则得分,否则不得分。
(2009年普及组试题为第一题5空,每空3分,第二题前三空每空3分,后两空每空2分)
2010:3道问题求解题:每题5分;程序阅读理解题:每题7分;程序完善题:第1空,2分;其余2.5分。
2012:程序完善题:第一第二空2分,其余3分。
*复试
复试的题型和形式向全国信息学奥赛(NOI)靠拢,全部为上机编程题,但难度略低。复试为决出竞赛成绩的最后一个环节。题目难度有易有难,既考虑普及面,又考虑选拔的梯度要求。每一道试题包括:题目、问题描述、样例说明(输入、输出及必要的说明)、数据范围(数据限制条件)。测试时,测试程序为每道题提供了10~20组测试数据,考生程序每答对一组得5~10分;累计分即为该道题的得分。其中普及组题目包括4道题,每题100分,共计400分;从2011年开始,提高组由一试改为两试,分由两天进行。每天竞赛试题由原来的4题改为3题。所有进入复赛的提高组选手均参加一试和二试,选手最终成绩由一试与二试成绩算术相加而得,即满分为600分。
从2016年开始,每年NOIP复赛普及组、提高组都将各有两题从NOI题库中选出。题面可能会变化,解法保持不变。
自2017年来,由于参赛人数增多,NOIP复赛规模的规则进行了调整,包括:每个省赛区可以设立多于两个的复赛考点(但必须在同一个城市),初赛进入复赛的比例和规模由各省赛区自行决定,在条件许可的情况下,鼓励更多选手参赛。同时复赛获奖比例将基本保持不变,全国一等奖获奖比例约为复赛参赛选手的20%。
奖项级别
获得全国青少年信息学奥林匹克联赛(NOIP)一等奖的应届高中毕业生,均具有保送进入高校就读的资格。部分地区一等奖获奖选手还享有高考加分优惠,具体情况视省招办政策而定。获奖选手可申请参加高校自主招生和保送生考试,经高校测试通过,可享受高考降分优惠或直接保送录取。
NOIP中成绩优秀的非高三选手,可以作为省代表队成员参加全国决赛(NOI)及夏令营比赛(部分省市代表队人员须经过选拔赛决出)。
NOIP获奖选手同样具有保送资格,并且成绩优秀的选手能够当场获得高校点招,免试进入名牌大学。夏令营作为全国决赛的扩大赛,本身不具有保送资格,但如果选手之前已获得NOIP一等奖,则同样可以参与现场保送。
参赛地点
NOIP在同一时间、不同地点以各省市为单位由特派员组织
竞赛报名资格
参加者可为初高中学生或其他中等专业学校的青少年。
报名时间
初赛是十月的第2个或第3个星期六下午14:30-16:30在考试开始后一个小时可提前交卷,但最好不要提前交卷(普及,提高)
复赛是十一月的第2个星期六下午14:30-18:00(普及组)
十一月的第2个星期六上午8:30-12:00,星期日上午8:30-12:00(共2天,提高组)
竞赛如何报名
学生通过官网注册报名
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)