资源描述:
《信息奥赛题库(含答案).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、信息奥赛题库(2011-4-3)---【信息奥赛题库】编制组打印杨辉三角前10行标程programyhsj10;varyh:array[1..10,0..10]ofinteger;i,j:integer;beginyh[1,1]:=1;fori:=2to10doforj:=1toidoyh[i,j]:=yh[i-1,j]+yh[i-1,j-1];fori:=1to10dobeginforj:=1toidowrite(yh[i,j],'');writeln;end;End.2.读入10个数,输出偶数项及它们和,输出奇数项及它们的平均数。
2、(读入10个数输出偶数项及它们和输出奇数项及它们的平均数)标程programexe6_1;vari,s,t,n:integer;a:array[1..10]ofinteger;beginfori:=1to10doread(a[i]);fori:=1to10doifimod2=0thenbeginwrite(a[i],'');s:=s+a[i];end;writeln(s);fori:=1to10doifimod2<>0thenbeginwrite(a[i],'');t:=t+a[i];n:=n+1;end;writeln(t/n);e
3、nd.3.读入n个数,打印其中的最大数及其位置号(读入n个数打印其中的最大数及其位置号)标程programexe6_2;vari,max,min,t,n:integer;a:array[1..10]ofinteger;beginfori:=1to10doread(a[i]);max:=a[1];min:=a[1];t:=1;n:=1;fori:=2to9dobeginifmaxa[i]thenbeginmin:=a[i];n:=I;end;end;write
4、ln(max,'',t);writeln(min,'',n);end.4.交换a和b的值标程programp1_1;vara,b,x:integer;beginread(a,b);x:=a;a:=b;b:=x;writeln(a,'',b);End.Problem1:leader2谁是组长2问题描述八中信息组需要选一个组长。信息组一共有n个人,分别用1到n编号,其中m个人参与了投票。得票数过半(票数大于mdiv2)的人将被选为组长。输入数据将告知这m个人分别将票投给了谁,请统计出谁将担任八中信息组的组长。输入数据第一行两个数n和m。第
5、二行有m个数,这些数都是不超过n的正整数,表明这m个人的选择。输出数据输出将被选为组长的人。如果没有人的票数过半,请输出-1。输入样例747727输出样例7时间限制各测试点1秒内存限制你的程序将被分配32MB的运行空间数据规模1<=n<=maxlongint1<=m<=1000000考察内容查找第k大元素programleader2;vara:array[1..1000000]oflongint;n,m:longint;procedurereadp;vari:longint;beginreadln(n,m);fori:=1tomdor
6、ead(a[i]);end;procedureswap(vart1,t2:longint);vart3:longint;begint3:=t1;t1:=t2;t2:=t3;end;functionfind(l,r,k:longint):longint;vari,j,mid:longint;beginifl=rthenexit(a[l]);i:=l;j:=r;mid:=a[(i+j)div2];repeatwhilea[i]middodec(j);ifi<=jthenbeginswap(a[
7、i],a[j]);inc(i);dec(j);end;untili>j;if(l<=j)and(k<=j)thenexit(find(l,j,k));if(i<=r)and(k>=i)thenexit(find(i,r,k));exit(mid);end;functionleader(x:longint):boolean;vari,count:longint;begincount:=0;fori:=1tomdoifa[i]=xtheninc(count);exit(count>mdiv2);end;{====main====}varx
8、:longint;beginassign(input,'leader2.in');reset(input);assign(output,'leader2.out');rewrite(output);readp;x:=fi