2019NOIP20XX普及组复赛试题与解题报告

2019NOIP20XX普及组复赛试题与解题报告

ID:41226728

大小:18.85 KB

页数:9页

时间:2019-08-19

2019NOIP20XX普及组复赛试题与解题报告_第1页
2019NOIP20XX普及组复赛试题与解题报告_第2页
2019NOIP20XX普及组复赛试题与解题报告_第3页
2019NOIP20XX普及组复赛试题与解题报告_第4页
2019NOIP20XX普及组复赛试题与解题报告_第5页
资源描述:

《2019NOIP20XX普及组复赛试题与解题报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、NOIP20XX普及组复赛试题与解题报告  NOIP20XX普及组解题报告  一、ISBN号码  【问题描述】  每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”是分隔符,最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如0代表英语;第一个分隔符“-”之后的三位数字代表出版社,例如670代表维京出版社;第二个分隔之后的五位数字代表该书在出版社的编号;最后一位为识别码。  识别码的计算方法如下:  首位数字乘以1加上

2、次位数字乘以2……以此类推,用所得的结果mod11,所得的余数即为识别码,如果余数为10,则识别码为大写字母X。例如ISBN号码0-670-82162-4中的识别码4是这样得到的:对067082162这9个数字,从左至右,分别乘以1,2,…,9,再求和,即0×1+6×2+……+2×9=158,然后取158mod11的结果4作为识别码。  你的任务是编写程序判断输入的ISBN号码中识别码是否正确,如果正确,则仅输出“Right”;如果错误,则输出你认为是正确的ISBN号码。【输入】  输入文件只有一行,是一个字符序列,表示一本书的ISBN号码。【输出】  输出文件共一行,假如输入的ISBN

3、号码的识别码正确,那么输出“Right”,否则,按照规定的格式,输出正确的ISBN号码。  【输入输出样例1】0-670-82162-4  Right  【输入输出样例2】  0-670-82162-0  0-670-82162-4  【试题分析】  基础字符串处理题,心细一点的基本都能得满分。  【参考程序】programisbn;const  inp='';oup='';var  i,j,k,ans:longint;s:string;ch:char;procedureflink;begin  assign(input,inp);  reset(input);  assign(outp

4、ut,oup);  rewrite(output);end;  procedurefclose;begin  close(input);  close(output);end;beginflink;  readln(s);//输入字符串j:=0;  i:=1;  ans:=0;whilejkdoinc(i);  whiletmp[j]j;  ifm0then  begin  inc(j);  tmp[j]:=row[i];  end;  end;  qsort(1,j);//对tmp数组排序  flag:=tmp[k];//flag为前K项的最小值i:=1;j:=0;  while(i=

5、flagthen//如果该行能分割的人数不少于flag,说明此处可以添加通道  begin  write(i);  inc(j);  ifjkthenwrite('');  end;  inc(i);  end;writeln;  //下面是求列通道,思想同上  j:=0;  fori:=1tondo  begin  ifcol[i]>0then  begin  inc(j);  tmp[j]:=col[i];  end;  end;qsort(1,j);flag:=tmp[L];i:=1;j:=0;  while(i=flagthen  begin  write(i);  inc(j)

6、;  ifjLthenwrite('');  end;  inc(i);  end;fclose;end.  三、传球游戏  【问题描述】  上体育课的时候,小蛮的老师经常带着同学们一起做游戏。这次,老师带着同学们一起做传球游戏。游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个同学可以把球传给自己左右的两个同学中的一个,当老师再次吹哨子时,传球停止,此时,拿着球没传出去的那个同学就是败者,要给大家表演一个节目。  聪明的小蛮提出一个有趣的问题:有多少种不同的传球方法可以使得从小蛮手里开始传的球,传了m次以后,又回到小蛮手里。两种传球的方法

7、被视作不同的方法,当且仅当这两种方法中,接到球的同学按接球顺序组成的序列是不同的。比如有3个同学1号、2号、3号,并假设小蛮为1号,球传了3次回到  小蛮手里的方式有1->2->3->1和1->3->2->1,共2种。【输入】  输入文件共一行,有两个用空格隔开的整数n,m。【输出】  输出文件共一行,有一个整数,表示符合题意的方法数。  【输入输出样例】332【限制】  40%的数据满足:3maxxthenwriteln;  en

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。