NOIP复赛模拟题

合集下载

noip2007普及组复赛试题[精品]

noip2007普及组复赛试题[精品]

全国信息学奥林匹克联赛(NOIP2007)复赛普及组1.奖学金(scholar.pas/c/cpp)【问题描述】某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。

期末,每个学生都有3门课的成绩:语文、数学、英语。

先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学排在前面,这样,每个学生的排序是唯一确定的。

任务:先根据输入的3门课的成绩计算总分,然后按上述规则排序,最后按排名顺序输出前五名名学生的学号和总分。

注意,在前5名同学中,每个人的奖学金都不相同,因此,你必须严格按上述规则排序。

例如,在某个正确答案中,如果前两行的输出数据(每行输出两个数:学号、总分) 是:7 2795 279这两行数据的含义是:总分最高的两个同学的学号依次是7号、5号。

这两名同学的总分都是 279 (总分等于输入的语文、数学、英语三科成绩之和) ,但学号为7的学生语文成绩更高一些。

如果你的前两名的输出数据是:5 2797 279则按输出错误处理,不能得分。

【输入】输入文件scholar.in包含n+1行:第1行为一个正整数n,表示该校参加评选的学生人数。

第2到n+1行,每行有3个用空格隔开的数字,每个数字都在O到100之间z第1行的3个数字依次表示学号为j-1的学生的语文、数学、英语的成绩。

每个学生的学号按照输入顺序编号为l~n (恰好是输入数据的行号减1)。

所给的数据都是正确的,不必检验。

【输出】输出文件scholar.out共有5行,每行是两个用空格隔开的正整数,依次表示前5名学生的学号和总分。

全国信息学奥林匹克联赛(NOIP2007)复赛普及组【输入输出样例1】【输入输出样例2】【限制】50%的数据满足:各学生的总成绩各不相同 100%的数据满足: 6<=n<=300全国信息学奥林匹克联赛(NOIP2007)复赛普及组2.纪念品分组(group.pas/c/cpp)【题目描述】元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作。

prob水题专练

prob水题专练

NOIP普及组复赛模拟赛试卷普及组(请选手务必仔细阅读本页内容)【输入格式】1行,有两个用空格隔开的整数n,m(3≤n≤30,1≤m≤30)。

【输出格式】一个整数,表示符合题意的方法数。

【输入样例】3 3【输出样例】2【数据规模】对于40%的数据:3≤n≤30;1≤m≤20;对于100%的数据:3≤n≤30;1≤m≤30;维修栅栏(fence.pas/c/cpp)【问题描述】农场的栅栏年久失修,出现了多处破损,晶晶准备维修它,栅栏是由n块木板组成的,每块木板可能已经损坏也可能没有损坏。

晶晶知道,维修连续m个木板(这m个木板不一定都是损坏的)的费用是sqrt(m)。

可是,怎样设计方案才能使总费用最低呢?请你也来帮帮忙。

【输入格式】第1行包含一个整数n(n≤2500),表示栅栏的长度;第2行包含n个由空格分开的整数(长整型范围内)。

如果第i个数字是0,则表示第i块木板已经损坏,否则表示没有损坏。

【输出格式】仅包含一个实数,表示最小维修费用;注意:答案精确到小数点后3位。

【输入样例】90 -1 0 1 2 3 0 -2 0【输出样例】3.000fstring 字符串(fstring.pas/c/cpp)【问题描述】一个只包含A,B,C三种字符的字符串,如果其中有连续的3个由A,B,C各一个组成的子串,则称这个字符串为fstring字符串。

例如:BAACAACCBAAA就是一个fstring字符串,而AABBCCAABB则不是。

你的任务是计算只包含A,B,C三种字符且长度为n的这种字符串有多少个不是fstring字符串。

【输入格式】一个整数n(l≤n≤30)。

【输出格式】一个整数。

【输入样例1】2【输出样例1】9【输入样例2】3【输出样例2】21款待奶牛(treat.pas/c/cpp)【问题描述】FJ有n(1≤n≤2000)个美味的食物,他想卖掉它们来赚钱给奶牛。

这些食物放在一些箱子里,它们有些有趣的特性:(1)这些食物被编号为1~n,每一天FJ可以从这排箱子的头部或者尾部取出食物去卖;(2)这些食物放得越久,年龄越大,价值越大,食物i有一个初始的价值V(i);(3)放了a天后,年龄为a,食物最终的价值为V(i)×a。

NOIP2010-普及组复赛-第一题-数字统计

NOIP2010-普及组复赛-第一题-数字统计

NOIP2010-普及组复赛-第⼀题-数字统计题⽬描述 Description请统计某个给定范围[L, R]的所有整数中,数字 2 出现的次数。

⽐如给定范围[2, 22],数字 2 在数 2 中出现了 1 次,在数 12 中出现 1 次,在数 20 中出现 1 次,在数 21 中出现 1 次,在数 22 中出现 2 次,所以数字 2 在该范围内⼀共出现了 6次。

输⼊输出格式 Input/output输⼊格式:输⼊⽂件名为 two.in。

输⼊共 1 ⾏,为两个正整数 L 和 R,之间⽤⼀个空格隔开。

输出格式:输出⽂件名为 two.out。

输出共 1 ⾏,表⽰数字 2 出现的次数。

输⼊输出样例 Sample input/output样例测试点#1输⼊样例:【输⼊样例1】2 22【输⼊样例2】2 100输出样例:【输出样例1】6【输出样例2】20说明 description1 ≤ L ≤R≤ 10000。

思路:两重循环,判断在这个范围内的每个数是否包含2(每个位数除以10是否为2),计数器++就得了,记得每次要除以10;代码如下:1 #include <stdio.h>2int main()3 {4int n,m,i,k;5int ans=0;6//freopen("two.in","r",stdin);7//freopen("two.out","w",stdout);8 scanf("%d%d",&n,&m);9for(i=n;i<=m;i++)10 {11 k=i;12while(k>0)13 {14if(k%10==2) ans++;15 k=k/10;16 }17 }18 printf("%d\n",ans);19return0;20 }。

乌龟棋 (NOIP2010)复赛 提高组 试题二 解题代码

乌龟棋 (NOIP2010)复赛 提高组 试题二 解题代码

乌龟棋(NOIP2010)复赛提高组试题二解题代码分类:C/C++解题代码2011-07-23 18:56 271人阅读评论(2) 收藏举报view plaincopy to clipboardprint?1. /*2. 全国信息学奥林匹克联赛(NOIP2010)复赛提高组第二题3. 【问题描述】4. 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物。

5. 乌龟棋的棋盘是一行N 个格子,每个格子上一个分数(非负整数)。

棋盘第1 格是唯一6. 的起点,第N 格是终点,游戏要求玩家控制一个乌龟棋子从起点出发走到终点。

7. ……8. 1 2 3 4 5 …… N9. 乌龟棋中M 张爬行卡片,分成4 种不同的类型(M 张卡片中不一定包含所有4 种类型10. 的卡片,见样例),每种类型的卡片上分别标有1、2、3、4 四个数字之一,表示使用这种卡11. 片后,乌龟棋子将向前爬行相应的格子数。

游戏中,玩家每次需要从所有的爬行卡片中选择12. 一张之前没有使用过的爬行卡片,控制乌龟棋子前进相应的格子数,每张卡片只能使用一次。

13. 游戏中,乌龟棋子自动获得起点格子的分数,并且在后续的爬行中每到达一个格子,就得到14. 该格子相应的分数。

玩家最终游戏得分就是乌龟棋子从起点到终点过程中到过的所有格子的15. 分数总和。

16. 很明显,用不同的爬行卡片使用顺序会使得最终游戏的得分不同,小明想要找到一种卡17. 片使用顺序使得最终游戏得分最多。

18. 现在,告诉你棋盘上每个格子的分数和所有的爬行卡片,你能告诉小明,他最多能得到19. 多少分吗?20. 【输入】21. 输入文件名tortoise.in。

输入文件的每行中两个数之间用一个空格隔开。

22. 第1 行2 个正整数N 和M,分别表示棋盘格子数和爬行卡片数。

23. 第2 行N 个非负整数,a1, a2, ……, aN,其中ai 表示棋盘第i 个格子上的分数。

24. 第3 行M 个整数,b1,b2, ……, bM,表示M 张爬行卡片上的数字。

noip2003复赛普及组第一题——乒乓球

noip2003复赛普及组第一题——乒乓球

noip2003复赛普及组第⼀题——乒乓球1/*=======================================================================2题⼀、乒乓球(Table.pas)3【问题背景】国际乒联现在主席沙拉拉⾃从上任以来就⽴志于推⾏⼀系列改⾰,4以推动乒乓球运动在全球的普及。

其中11分制改⾰引起了很⼤的争议,有⼀部分球员5因为⽆法适应新规则只能选择退役。

华华就是其中⼀位,他退役之后⾛上了乒乓球6研究⼯作,意图弄明⽩11分制和21分制对选⼿的不同影响。

在开展他的研究之前,7他⾸先需要对他多年⽐赛的统计数据进⾏⼀些分析,所以需要你的帮忙。

8【问题描述】华华通过以下⽅式进⾏分析,⾸先将⽐赛每个球的胜负列成⼀张表,9然后分别计算在11分制和21分制下,双⽅的⽐赛结果(截⾄记录末尾)。

10⽐如现在有这么⼀份记录,(其中W表⽰华华获得⼀分,L表⽰华华对⼿获得⼀分):11WWWWWWWWWWWWWWWWWWWWWWLW12在11分制下,此时⽐赛的结果是华华第⼀局11⽐0获胜,第⼆局11⽐0获胜,正在进⾏13第三局,当前⽐分1⽐1。

⽽在21分制下,此时⽐赛结果是华华第⼀局21⽐0获胜,14正在进⾏第⼆局,⽐分2⽐1。

如果⼀局⽐赛刚开始,则此时⽐分为0⽐0。

15你的程序就是要对于⼀系列⽐赛信息的输⼊(WL形式),输出正确的结果。

16【输⼊格式】每个输⼊⽂件包含若⼲⾏字符串(每⾏⾄多20个字母),字符串有17⼤写的W、L和E组成。

其中E表⽰⽐赛信息结束,程序应该忽略E之后的所有内容。

18【输出格式】输出由两部分组成,每部分有若⼲⾏,每⼀⾏对应⼀局⽐赛的⽐分19(按⽐赛信息输⼊顺序)。

其中第⼀部分是11分制下的结果,第⼆部分是21分制20下的结果,两部分之间由⼀个空⾏分隔。

21【输⼊样例】22WWWWWWWWWWWWWWWWWWWW23WWLWE24【输出样例】2511:02611:0271:1282921:0302:131=========================================================================*/32 #include<stdio.h>33 #include<math.h>34int main()35 {36int W1,L1,W2[10000]={0},L2[10000]={0},i,j;37char ch;38int f1=0,f2=0;39 freopen("table.in0","r",stdin);40 freopen("table.out0","w",stdout);41 i=0;42 W1=L1=0;43 ch=getchar();44while(ch!='E')45 {46if(ch=='W')47 {48 W1++;49 W2[i]++;50 }51else if(ch=='L')52 {53 L1++;54 L2[i]++;55 }56if(W1>=11||L1>=11)57 {58if(fabs(W1-L1)>=2)59 {60 f1=1;61 printf("%d:%d\n",W1,L1);62 W1=L1=0;63 }64 }65if(W2[i]>=21||L2[i]>=21)66 {67if(fabs(W2[i]-L2[i])>=2)68 {69 i++;70 }71 }7273 ch=getchar();74 }75//下⾯是把11分制最后⼀组⽐赛结果给输出来76//注意:这⾥的做法是:最后⼀组⽐赛结果即便是0:0也要输出77//假如把下⾯屏蔽掉的部分启⽤,那么:假如只有⼀组⽽且是0:0那就输出,假如有多组,⽽且最后⼀组若是0:0,那最后⼀组不输出。

长乐一中Day1题目

长乐一中Day1题目

全国信息学奥林匹克联赛(NOIP2014)复赛模拟题Day1长乐一中题目名称正确答案序列问题长途旅行英文名称answer sequence travel输入文件名answer.in sequence.in travel.in输出文件名answer.out sequence.out travel.out 时间限制1s1s1s空间限制256M256M256M测试点数目202010测试点分值5510是否有部分分无无无题目类型传统传统传统是否有SPJ无无无1.正确答案【题目描述】小H与小Y刚刚参加完UOIP外卡组的初赛,就迫不及待的跑出考场对答案。

“吔,我的答案和你都不一样!”,小Y说道,”我们去找神犇们问答案吧”。

外卡组试卷中共有m道判断题,小H与小Y一共从其他n个神犇那问了答案。

之后又从小G那里得知,这n个神犇中有p个考了满分,q个考了零分,其他神犇不为满分或零分。

这可让小Y与小H犯了难。

你能帮助他们还原出标准答案吗?如有多解则输出字典序最小的那个。

无解输出-1。

【输入格式】第一行四个整数n,m,p,q,意义如上描述。

接下来n行,每一行m个字符’N’或’Y’,表示这题这个神犇的答案。

【输出格式】仅一行,一个长度为m的字符串或是-1。

【样例输入】2220YYYY【样例输出】YY【数据范围】30%:n<=100.60%:n<=5000,m<=100.100%:1<=n<=30000,1<=m<=500.0<=p,q且p+q<=n.2.序列问题【题目描述】小H是个善于思考的学生,她正在思考一个有关序列的问题。

她的面前浮现出了一个长度为n的序列{ai},她想找出两个非空的集合S、T。

这两个集合要满足以下的条件:1.两个集合中的元素都为整数,且都在[1,n]里,即Si,Ti∈[1,n]。

2.对于集合S中任意一个元素x,集合T中任意一个元素y,满足x<y。

NOIP 题目

NOIP2008一、单项选择题(共10题,每题1.5分,共计15分。

每题有且仅有一个正确答案)。

1.在以下各项中,()不是操作系统软件。

A.Solaris B.Linux C.Sybase D.Windows Vista E.Symbian2.微型计算机中,控制器的基本功能是()。

A.控制机器的各个部件协调工作B.实现算数运算与逻辑运算C.存储各种控制信息D.获取外部信息E.存放程序和数据3.设字符串S=“Olympic”,S的非空字串的数目是()。

A.29 B.28 C.16 D.17 E.74.完全二叉树有2*N-1的结点,则它的叶子结点数目是()。

A.N-1 B.2*N C.N D.2N-1 E.N/25.将数组{8,23,4,16,77,-5,53,100}中元素从大到小按顺序排序,每次可以交换任意两个元素,最少要交换()次。

A.4 B.5 C.6 D.7 E.86.设栈S的初始状态为空,元素a,b,c,d,e,f依次入栈,出栈顺序为b,d,c,f,e,a那么栈容量至少应该是()。

A.6 B.5 C.4 D.3 E.27.与十进制数28.5625相等的四进制数是()A.123.21 B.131.22 C.130.22 D.130.21 E.130.208.递归过程和函数调用时,处理参数和返回地址,通常使用一种称为()的数据结构。

A.队列B.多维数组C.线性表D.链表E.栈9.TCP/IP 是一组构成互联网基础的网络协议,字面上包括两组协议:传输控制协议(TCP)和网际互联协议(IP)。

TCP/IP协议把Internet网络系统描述成具有4个层次功能的网络模型,其中提供源节点和目的节点之间的信息传输服务,包括寻址和路由器选择等功能的是()。

A.链路层B.网络层C.传输层D.应用层E.会话层10.对有序数组{5,13,19,21,37,56,64,75,88,92,100}进行二分查找,等概率情况下,查找成功的平均查找长度(平均比较次数)是()。

NOIP2014普及组复赛试题

1. 珠心算测验【问题描述】 珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术。

珠心算训练,既能够开发智力,又能够为日常生活带来很多便利,因而在很多学校得到普及。

某学校的珠心算老师采用一种快速考察珠心算加法能力的测验方法。

他随机生成一个正整数集合,集合中的数各不相同,然后要求学生回答:其中有多少个数,恰好等于集合中另外两个(不同的)数之和? 最近老师出了一些测验题,请你帮忙求出答案。

【输入】输入文件名为count.in 。

输入共两行,第一行包含一个整数n ,表示测试题中给出的正整数个数。

第二行有n 个正整数,每两个正整数之间用一个空格隔开,表示测试题中给出的正整数。

【输出】输出文件名为count.out 。

输出共一行,包含一个整数,表示测验题答案。

【输入输出样例】 count.in count.out 4 1 2 3 42【样例说明】由1+2=3,1+3=4,故满足测试要求的答案为2。

注意,加数和被加数必须是集合中的两个不同的数。

【数据说明】对于100%的数据,3 ≤ n ≤ 100,测验题给出的正整数大小不超过10,000。

2.比例简化【问题描述】在社交媒体上,经常会看到针对某一个观点同意与否的民意调查以及结果。

例如,对某一观点表示支持的有1498人,反对的有902人,那么赞同与反对的比例可以简单的记为1498:902。

不过,如果把调查结果就以这种方式呈现出来,大多数人肯定不会满意。

因为这个比例的数值太大,难以一眼看出它们的关系。

对于上面这个例子,如果把比例记为5:3,虽然与真实结果有一定的误差,但依然能够较为准确地反映调查结果,同时也显得比较直观。

现给出支持人数A,反对人数B,以及一个上限L,请你将A比B化简为A’比B’,要求在A’和B’均不大于L且A’和B’互质(两个整数的最大公约数是1)的前提下,A’/B’≥A/B 且A’/B’ - A/B的值尽可能小。

【输入】输入文件名为ratio.in。

NOIP2022提高组复赛题解

NOIP2022提高组复赛题解第一题笨小猴某题目描述:笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼。

但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大!这种方法的具体描述如下:假设ma某n是单词中出现次数最多的字母的出现次数,minn是单词中出现次数最少的字母的出现次数,如果ma某n-minn是一个质数,那么笨小猴就认为这是个LuckyWord,这样的单词很可能就是正确的答案。

输入格式:输入文件word.in只有一行,是一个单词,其中只可能出现小写字母,并且长度小于100。

某输出格式:输出文件word.out共两行,第一行是一个字符串,假设输入的的单词是LuckyWord,那么输出“LuckyWord”,否则输出“NoAnwer”;第二行是一个整数,如果输入单词是LuckyWord,输出ma某n-minn的值,否则输出0。

样例1输入:error输出:LuckyWord2解释:单词error中出现最多的字母r出现了3次,出现次数最少的字母出现了1次,3-1=2,2是质数。

样例2输入:olymipic输出:NoAnwer0解释:单词olympic中出现最多的字母i出现了2次,出现次数最少的字母出现了1次,2-1=1,1不是质数。

思路:统计单词中每个字母的出现次数,挑出最多的次数和最少的次数(不包括0次),相减判断是否为质数即可。

判断质数时可以写函数判断,也可以把100以内的质数列成常量数组直接判断,因为单词最多只有100个字母。

需要注意的是输出时的LWNA四个字母要大写。

某总结:这是一道送分题,没有什么难度,需要注意的细节也不多,所以在比赛中是一定要拿满分的。

参考样程#include<ftream>#include<tring>#include<cmath>#defineI_F"word.in "#defineO_F"word.out"uingnamepacetd;tring;hortan;voidInput();voi dSearch();boolPd();voidOutput();intmain(){Input();Search();Output();return0;}voidInput(){iftreamfin(I_F);fin>>;fin.cloe();}voidS earch()//统计字母出现次数{horti,ma某=0,min=200;hortf[26]={0};for(i=0;i<.length();f[[i++]-'a']++);for(i=0;i<26;i++)if(f[i]>0){if(f[i]>ma某)ma某=f[i];if(f[i]<min)min=f[i];}an=ma某-min;}boolPd()//判断质数{if(an==1)returnfale;eleif(an==2)returntrue;eleif(an%2==0)return fale;elefor(horti=3;i<=qrt((double)an);i+=2)if(an%i==0)returnfal e;returntrue;}voidOutput(){oftreamfout(O_F);if(Pd())fout<<"LuckyWord\n"<<an<<endl;elefout<<"NoAnwer\n0\n";fout.cloe();}第二题火柴棒等式问题描述:给你n根火柴棍,你可以拼出多少个形如“A+B=C”的等式?等式中的A、B、C是用火柴棍拼出的整数(若该数非零,则最高位不能是0)。

NOIP1999提高组复赛试题

第五届全国青少年信息学(计算机)奥林匹克分区联赛复赛试题(提高组竞赛用时:3小时)第一题拦截导弹(28分)某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。

但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。

某天,雷达捕捉到敌国的导弹来袭。

由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。

输入导弹依次飞来的高度(雷达给出的高度数据是不大于30000的正整数),计算这套系统最多能拦截多少导弹,如果要拦截所有导弹最少要配备多少套这种导弹拦截系统。

样例:INPUT OUTPUT389 207 155 300 299 170 158 65 6(最多能拦截的导弹数)2(要拦截所有导弹最少要配备的系统数)第二题回文数(25分)若一个数(首位不为零)从左向右读与从右向左读都一样,我们就将其称之为回文数。

例如:给定一个10进制数56,将56加65(即把56从右向左读),得到121是一个回文数。

又如:对于10进制数87:STEP1:87+78 = 165 STEP2:165+561 = 726STEP3:726+627 = 1353 STEP4:1353+3531 = 4884在这里的一步是指进行了一次N进制的加法,上例最少用了4步得到回文数4884。

写一个程序,给定一个N(2<=N<=10或N=16)进制数M,求最少经过几步可以得到回文数。

如果在30步以内(包含30步)不可能得到回文数,则输出“Impossible!”样例:INPUT OUTPUTN = 9 M= 87 STEP=6第三题旅行家的预算(27分)一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时油箱是空的)。

给定两个城市之间的距离D1、汽车油箱的容量C(以升为单位)、每升汽油能行驶的距离D2、出发点每升汽油价格P和沿途油站数N(N可以为零),油站i离出发点的距离Di、每升汽油价格Pi(i=1,2,……N)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Noip2006复赛模拟题
NOIP2006复赛模拟题(普及组水平)
(时间:3小时)
注意事项:
1. 严格按照题目所要求的格式进行输入、输出。
2. 题目测试数据有严格的时间,超时不得分。所有题目的时限均为1秒。
3. 输入文件格式不用判错。程序文件名、输入输出文件名等请严格按照要求。
4. 本次比赛共4题。
5. 同时提交pas、exe文件,请使用freepascal编译。编译后的exe请留意是否能正确运行。
为方便测试,所有pas、exe均存在一个文件夹中,该文件夹用你的中文名字命名,然后
把整个文件夹压缩为一个rar文件(该文件也是用你的中文名字命名)提交到老师邮箱:
*************。

题号 第一题 第二题 第三题 第四题
试题名称 位置 面积 阶乘位数 九连环
提交文件名
posi area jc ring
输入文件名
posi.in area.in jc.in ring.in
输出文件名
posi.out area.out jc.out ring.out
满分 100 100 100 100

第一题 位置(posi.pas)
求数A在数组B中的位置.
输入及格式:第一行是数A ,一维数组B的元素个数N(N<=105),中间用空格隔开。
第二行是已按升序排列的一维数组B (-32768输出及格式:数A在B中的下标。B中如果存在多个A,则输出下标最小的一个。如果B
中不存在A,则输出 “-1”

输入样例1:3 6
1 3 3 4 5 10
输出样例1:2
输入样例2:1 3
3 4 5
输出样例2:-1

第二题 面积(area.pas)

一幅图由0和*组成,编程计算由“*”号所围成的图形的面积。面积是指*号所围成的
闭合
曲线中0的数目。
输入:由0,*组成的图
输出:面积数
Noip2006复赛模拟题
输入样例:
000000000
0000**000
000*00*00
00*000*00
000***000
000000000
输出样例:
5

输入样例2:
00000
00000
00*00
0*0*0

输出样例2:
0

第三题 阶乘位数(jc.pas)
问题描述:
在很多软件中需要用到较大的整数。比如一些软件将大数用于数据安全传送的密匙或者
密码编译等等。在这个问题中,你要根据给你的整数,算出这个数的阶乘的位数。

输入格式:
输入文件包含若干行整数。第一行为n,表示有n组数据,接下来是n行,每行一个整

数m(1≤m≤107)。

输出格式:
输出这些数的阶乘的位数。

输入样例:
2
10
20
输出样例:
7
19
Noip2006复赛模拟题
第四题:九连环(ring.pas)
问题描述:
九连环是由九个彼此套接的圆环和一根横杆组成,九个环从左到右依次为1-9,每个环有两种
状态:1和0,1表示环在杆上,0表示环不在杆上.初始状态是九个环都在杆上,即:111111111,目标
状态是九个环都不在环上,即:000000000,由初始状态到目标状态的变化规则是:
<1>第一环为无论何时均可自由上下横行.
<2>第二只环只有在第一环为1时,才能自由上下.
<3>想要改变第n(n>2)个环的状态,需要先使第一到第(n-2)环均为下杆,且第n-1个环为
上杆,而与第N+1个到第九环状态无关.
<4>每改变一个环,记为一步.
现在九连环由111111111变到000000000,求中间第I步的状态。

输入:仅包含一个整数i
输出:仅包含中间第i步的状态。如果输入的步数大于实际变换所需的步数,则输出-1。
输入样例:2
输出样例:010111111

输入样例:500
输出样例:-1

相关文档
最新文档