高中信息学奥林匹克竞赛复习分区联赛模拟试题2.docVIP

高中信息学奥林匹克竞赛复习分区联赛模拟试题2.doc

  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文档。上传文档
查看更多

分区联赛模拟试题2

一、回答问题

1、假定有四个元素A,B,C,D进一个栈,出栈顺序是ABCD,请写出所有数目的进栈序列.

2、设A是一个n阶上三角阵,将这个上三角阵按列序存储一维数组b[n*(n+1)/2]中,如果a[I,j]存放在b[k],那么请给出求解k的计算公式.

3、设A是一个一维数组a[m*n],现将这个数组按列序存储在一个m*n的矩阵B中,如果a[k]存放在b[I,J],那么请给出求解I,J的计算公式.

二、程序设计

1、尾数前移

一个整数的尾数是a(可以多位),把尾数a移到其前面(成为最高位)后所得的数为原整数的b(一位数字)倍,原整数为多大?

这是《数学通报》上发表的第一个具体的尾数前移问题.我们要求解一般的尾数前移问题:整数n的尾数a(可以多位)移到n的前面所得的数为n的b倍,记为n(a.b).b为一位数字,且不大于尾数a(当a为一位时)或a的最高位数字(当a为多位时).

设计程序,对于指定的尾数a与倍数b,寻求n(a,b).

2、高精度开平方

求任意给定的正整数n的平方根,精确到小数点后指定的m位.

三、阅读程序

1、constMaxn=100;

Maxk=100;

typearr=array[1..Maxn]ofinteger;

ktype=1..Maxk;

vari,n,k:integer;

a,b:arr;

procedurecounting(a,b:arr;n:integer;k:ktype);

vari,j:integer;

c:array[1..Maxk]ofinteger;

begin

fillchar(c,sizeof(c),0);

forj:=1tondo

c[a[j]]:=c[a[j]]+1;

fori:=2tokdoc[i]:=c[i]+c[i-1];

forj:=ndownto1dobegin

b[c[a[j]]]:=a[j];

c[a[j]]:=c[a[j]]-1;

end;

fori:=1tondowrite(b[i]:5);

writeln;

end;

begin

write(N,K=);readln(n,k);

fori:=1tondobegin

read(a[i]);

ifa[i]kthenbeginwriteln(error);halt;end;

end;

counting(a,b,n,k);

readln;

end.

第1组键盘输入:

86

36413414

第2组键盘输入:

53

42182

Output

11334446

error

文档评论(0)

159****6867 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档