noip普及组复赛模拟试题26(答案)

noip普及组复赛模拟试题26(答案)

ID:37855060

大小:64.50 KB

页数:8页

时间:2019-06-01

noip普及组复赛模拟试题26(答案)_第1页
noip普及组复赛模拟试题26(答案)_第2页
noip普及组复赛模拟试题26(答案)_第3页
noip普及组复赛模拟试题26(答案)_第4页
noip普及组复赛模拟试题26(答案)_第5页
资源描述:

《noip普及组复赛模拟试题26(答案)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1.数字反转(reverse.cpp/c/pas)【问题描述】给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。【输入】输入文件名为reverse.in。输入共1行,一个整数N。【输出】输出文件名为reverse.out。输出共1行,一个整数,表示反转后的新数。【输入输出样例1】reverse.inreverse.out123321【输入输出样例2】Reverse.inreverse.out-380

2、-83【数据范围】-1,000,000,000≤N≤1,000,000,000。var s3,s1,s2:string; n,i:integer;begin assign(input,'reverse.in');reset(input); assign(output,'reverse.out');rewrite(output); read(s1); n:=length(s1); ifs1[1]='-'then begin   s2:='-';   fori:=1ton-1do     s1[i]:=s1[

3、i+1];   delete(s1,n,1); end; n:=length(s1); fori:=1tondo s3:=s3+s1[n-i+1]; i:=1; while(s3[i]='0')and(length(s3)>1)dodelete(s3,1,1); write(s2+s3); close(input);close(output);end.2.统计单词数(stat.cpp/c/pas)【问题描述】一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单

4、词在文章中出现的次数。现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文章中出现的次数和第一次出现的位置。注意:匹配单词时,不区分大小写,但要求完全匹配,即给定单词必须与文章中的某一独立单词在不区分大小写的情况下完全相同(参见样例1),如果给定单词仅是文章中某一单词的一部分则不算匹配(参见样例2)。【输入】输入文件名为stat.in,2行。第1行为一个字符串,其中只含字母,表示给定单词;第2行为一个字符串,其中只可能包含字母和空格,表示给定的文章。【输出】输出文件名为stat.ou

5、t。只有一行,如果在文章中找到给定单词则输出两个整数,两个整数之间用一个空格隔开,分别是单词在文章中出现的次数和第一次出现的位置(即在文章中第一次出现时,单词首字母在文章中的位置,位置从0开始);如果单词在文章中没有出现,则直接输出一个整数-1。【输入输出样例1】stat.instat.outTotobeornottobeisaquestion20【输入输出样例1说明】输出结果表示给定的单词To在文章中出现两次,第一次出现的位置为0。【输入输出样例2】stat.instat.outtoDidtheOtto

6、manEmpireloseitspoweratthattime-1【输入输出样例2说明】表示给定的单词to在文章中没有出现,输出整数-1。【数据范围】1≤单词长度≤10。1≤文章长度≤1,000,000第二题有个陷阱,如果纯粹用字符串的7个操作命令,由于字串很长,后面几个点肯定超时。第二行的长串可以用字符一个个读。遇到空格跟上一行的串进行比较。这样能保证在规定时间内不超时。var s1,s2:string; ch:char; s,first,n,i,ans:longint;begin assign(inp

7、ut,'stat.in');reset(input); assign(output,'stat.out');rewrite(output); readln(s1); s1:=upcase(s1); first:=-1; n:=length(s1); whilenoteolndo begin   s2:='';   repeat     inc(s);     read(ch);     ch:=upcase(ch);     ifch<>''thens2:=s2+ch;   until(ch='')ore

8、oln;   ifs2=s1then     iffirst=-1then     begin       first:=s-n-1;       inc(ans);     endelse       inc(ans); end; iffirst=-1thenwrite(-1)elsewrite(ans,'',first); close(input);close(output);end.3.数字统计(two.pas/c/cp

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

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

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