ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:19.84KB ,
资源ID:3442978      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3442978.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(noip复赛模拟练习7答案.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

noip复赛模拟练习7答案.docx

1、noip复赛模拟练习7答案【问题描述】对于给定的一个长度为N的正整数数列Ai,现要将其分成连续的若干段,并且每段和不超过M(可以等于M),问最少能将其分成多少段使得满足要求。【输入文件】输入文件divide_a.in的第1行包含两个正整数N,M,表示了数列Ai的长度与每段和的最大值,第2行包含N个空格隔开的非负整数Ai,如题目所述。【输出文件】输出文件divide_a.out仅包含一个正整数,输出最少划分的段数。【样例输入】5 64 2 4 5 1【样例输出】3【数据规模与约定】对于20%的数据,有N10;对于40%的数据,有N1000;对于100%的数据,有N100000,M109,M大于所

2、有数的最小值,Ai之和不超过109。【样例说明】将数列如下划分:42 45 1第一段和为4,第2段和为6,第3段和为6均满足和不超过M=6,并可以证明3是最少划分的段数。varn,m,t,i,a,ans:longint;beginassign(input,divide_a.in);assign(output,divide_a.out);reset(input); rewrite(output);readln(n,m);t:=0; ans:=0;for i:=1 to n do beginread(a);if t+am then begininc(ans);t:=a;endelseinc(t,a

3、);end;if t0 then inc(ans);writeln(ans);close(input); close(output);end.将合数483的各位数字相加(4+8+3)=15,如果将483分解成质因数相乘: 483=3*7*23,把这些质因数各位数字相加(3+7+2+3),其和也为15。即某合数的各位数字之和等于它所有质因数的各数字之和。求1-N之间具有上述特点的所有合数。如输入N=100则输出 4 22 27 58 85 94var n,t1,t2,tatol: integer; yes: boolean;procedure sub1(x:integer; var t:inte

4、ger); 过程:分离x的各位数字 begin 并求各位数字之和 repeat t:=t+x mod 10; x:=x div 10; until x=0end;procedure sub2(x: integer; var t: integer); 过程:分解质因数 var xx,tt:integer;begin xx:=2; while x1 do if x mod xx=0 then begin tt:=0; sub1(xx,tt); t:=t+tt; x:=x div xx end else inc(xx)end;procedure sub3(x: integer;var yy: boo

5、lean); 过程:判断x是否为素数 var k,m: integer;begin k:=trunc(sqrt(x); for m:=2 to k do if x mod m=0 then yy:=false;end;begin 主程序 for n:=1 to 500 do begin t1:=0;t2:=0; yes:=true; sub3(n,yes); 调用过程求素数 if not yes then 如果非素数就 begin sub1(n,t1); 调用过程求n的各位数字之和 sub2(n,t2); 调用过程求n的各质因数的数字之和 if t1=t2 then write(n:6); 打

6、印合格的合数 end end; readlnend.4 22 27 58 85 94 121 166 202 265 274 319 346 355 378 382 391 438 454 483木偶(PUPPET)提交文件名:PUPPET.PAS 问题描述:有一种玩具,在玩具上有一个红色按钮,一个黄色按钮和一百个能坐能站的小木偶,按一次红色的按钮,就会有一个站着的小木偶坐下去,按一次黄色按钮,就可以使站着的小木偶增加一倍。开始时有三个小木偶站着,要想使站着的小木偶增加到N个,最少按几次按钮就行了?每一次按哪个按钮?问题求解:请编一程序,由键盘输入N(1N100),输出由1(按红色按钮)和2(

7、按黄色按钮)组成的按钮次序及总次数。输入输出示例:N = 21PRESS SEQUENCE :22121PRESS TIMES :5var s : string; n : longint;begin write(N = ); readln(n); s := ; if n 3 then repeat if odd(n) then begin s := 1+s; n := n+1; end else begin s := 2+s; n := n div 2; end; until n = 3; if n = 2 then s := 1+s; if n = 1 then s := 11+s; wri

8、teln(PRESS SEQUENCE : ,S); writeln(PRESS TIMES : ,length(s); readln;end.5(21 2) 100(1221212122 10)30(122212 6)直接解密(IMMEDIATE DECODABILITY)提交文件名:IMME.PAS问题描述:一个01串的集合,元素两两均不相同。如果任意个元素都不是其它元素的前缀,那么这个集合就被称为可直接解密的。我们规定01串的长度从1到50,每个集合中的01串个数从2到20个。例如:011000100000这个4个元素的01串集合就满足条件,是可直接解密的。但01100100000不是,

9、因为01是010的前缀。输入文件(IMME.IN):有若干行,每行一个01串,以一行“#”为结束标志。输出文件(IMME.OUT):如果这个集合是可直接解密的,输出“immediately decodable”;否则,输出“not immediately decodable”。输入输出样例:IMME.IN011000100000#IMME.OUTImmediately decodablevar s : array1.21 of string50; i,j,n : integer; b : boolean;begin writeln(Input : ); n := 0; repeat inc(n

10、); readln(sn); if sn = # then break; until false; dec(n); b := true; for i := 1 to n do begin for j := 1 to n do if (i j) and (pos(si,sj) = 1) then begin b := false; break; end; if not b then break; end; writeln(Output : ); if b then writeln(immediately decodable) else writeln(not immediately decoda

11、ble); readln;end.球星罗纳梅尔多最近被聘为C城城市形象代言人,巨幅照片被贴在每一条道路旁,可是就是这些照片,造成了司机看了海报、照片之后心脏病突发,引发了交通事故,所以C城的交通经常处于混乱状态。C城交通部长里瓦梅尔多是罗纳梅尔多的好友,他当然不忍心取缔好友的广告牌。于是,他为了便于管理,准备在C城安装一个交通系统,通过该系统显示该城哪些道路处于混乱堵车状态。C城有n个交通路口,任意两个交通路口之间都有一条双向的路。假设系统是从上午8点开始运行,此时所有看了罗纳梅尔多照片的人都晕倒了,此时所有的道路都处于堵车状态。如果一条道路处于堵车状态,那么这条道路连接的两个路口将不能通过这

12、一条边互达。系统需要即时处理三个问题:1,I u v道路(u,v)被疏通了,此时两路口u,v可以通过这条道路互达。2,D u v道路(u,v)又堵车了,此时两路口不能通过这条道路互达。3,Q u v 回答出两路口u,v是否可以互相到达(直接或间接都可以)。而你被里瓦梅尔多雇佣编写这个交通系统,至于报酬嘛,就是请你当任该系统的形象代言人。J输入描述:第一行两个整数n,m,分别表示城市的路口以及需要系统处理的问题数。接下来m行,每行一条指令,格式见样例。输出描述: 对于每个Q询问,如果两路口可以互达则输出Y否则输出N。输入样例:3 5I 1 2I 2 3Q 1 3D 1 2Q 1 3输出样例:YN

13、数据范围:n=100; mlen2 then begin for i:=1 to len2 do begin if aibi then exit(true); if biai then exit(false); end; exit(false); end else begin for i:=1 to len do begin if aibi then exit(true); if bilength(b) then exit(1); if length(b)length(a) then exit(2); for i:=1 to length(a) do begin if aibi then ex

14、it(1); if biai then exit(2); end; exit(0);end;begin readln(n); for i:=1 to n do begin readln(ai); readln(bi); end; for i:=1 to n-1 do for j:=i+1 to n do if ca(bi,bj)=2 then begin a0:=ai; ai:=aj; aj:=a0; b0:=bi; bi:=bj; bj:=b0; end else if (ca(bi,bj)=0) and (not zb(ai,aj) then begin a0:=ai; ai:=aj; aj:=a0; b0:=bi; bi:=bj; bj:=b0; end; for i:=1 to n do writeln(ai);end.

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1