NOIP2007提高组解题报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一题:count 统计数字 输入一个数n(n=200000)和n个自然数(每个数都不超过1.5*10^9),请统计出这些自然数各自出现的次数,按顺序从小到大输出。输入数据保证不相同的数不超过10000个。 样例输入: 8 2 4 2 4 5 100 2 100 样例输出: 2 3 4 2 5 1 100 2 第一题 program scholar(input,output); var a,b,c,id,s:array[1..300]of integer;v:array[0..0]of boolean; i,j,k,t,m,n,x,y:integer; begin assign(input,scholar.in); assign(output,scholar.out); reset(input);rewrite(output); readln(n); for i:=1 to n do begin readln(a[i],b[i],c[i]);id[i]:=i;end; for i:=1 to n do s[i]:=a[i]+b[i]+c[i]; for i:=1 to n-1 do for j:=i to n do begin if s[i]s[j]then begin t:=s[i];s[i]:=s[j];s[j]:=t; t:=a[i];a[i]:=a[j];a[j]:=t; t:=b[i];b[i]:=b[j];b[j]:=t; t:=c[i];c[i]:=c[j];c[j]:=t; t:=id[i];id[i]:=id[j];id[j]:=t; end; if s[i]=s[j]then if a[i]a[j] then begin t:=s[i];s[i]:=s[j];s[j]:=t; t:=a[i];a[i]:=a[j];a[j]:=t; t:=b[i];b[i]:=b[j];b[j]:=t; t:=c[i];c[i]:=c[j];c[j]:=t; t:=id[i];id[i]:=id[j];id[j]:=t; end end; for i:=1 to 5 do writeln(id[i], ,a[i]+b[i]+c[i]); close(input);close(output); end. 第二题:expand 字符串的展开 我们可以用减号对连续字母或数字进行缩写,于是字符串a-dha3-68就可以展开为abcdha34568。 输入三个参数p1,p2,p3,再输入一个仅由数字、小写字母和减号组成的字符串(长度不超过100),请按参数展开此字符串 各个参数的意义如下: 参数p1=1 - 所有填充的字母都写成小写; 参数p1=2 - 所有填充的字母都写成大写; 参数p1=3 - 所有填充的字母和数字都用星号代替; 参数p2=k - 同一个填充字符连续写k遍; 参数p3=1 - 顺序填充; 参数p3=2 - 逆序填充。 另外,如果减号两边的字符一个是数字一个是字母,或者减号右边的ASCII码没左边的大,则该处不变 样例输入1: 1 2 1 abcs-w1234-9s-4zz 样例输出1: abcsttuuvvw1234556677889s-4zz 样例输入2: 2 3 2 a-d-d 样例输出2: aCCCBBBd-d 样例输入3: 3 4 2 di-jkstra2-6 样例输出3: dijkstra2************6 第二题 program group(input,output); var s,i,w,n:integer; a:array[1..30000] of integer; procedure sort_quick(l,r:integer); var i,j,x,y:integer; begin i:=l;j:=r; x:=a[(l+r)div 2]; repeat while a[i]x do inc(i); while xa[j] do dec(j); if i=j then begin y:=a[i];a[i]:=a[j];a[j]:=y;inc(i);dec(j); end; until ij; if ir then sort_quick(i,r); if lj then sort_quick(l,j); end; begin assign(input,group.in); assign(output,group.out); reset(input);rewrite(output); readln(w);readln(n); f

您可能关注的文档

文档评论(0)

gl5000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档