【9A文】算法标准答案

上传人:Jerm****014 文档编号:93270419 上传时间:2019-07-19 格式:DOCX 页数:107 大小:125.34KB
返回 下载 相关 举报
【9A文】算法标准答案_第1页
第1页 / 共107页
【9A文】算法标准答案_第2页
第2页 / 共107页
【9A文】算法标准答案_第3页
第3页 / 共107页
【9A文】算法标准答案_第4页
第4页 / 共107页
【9A文】算法标准答案_第5页
第5页 / 共107页
点击查看更多>>
资源描述

《【9A文】算法标准答案》由会员分享,可在线阅读,更多相关《【9A文】算法标准答案(107页珍藏版)》请在金锄头文库上搜索。

1、【MeiWei_81重点借鉴文档】ProblemH:乘法口诀TimeLimit:1SecMemorRLimit:64MBSubmit:11234Solved:3034Description还记得以前小学时的九九乘法口诀吧。现在要求你编写程序打印出乘法口诀。不过现在的乘法口诀表跟以前稍微有点区别,我告诉你一个数字n(1=n=9),你要给我打出相应的nn乘法口诀表。Input多个测试数据。每个测试数据一行,输入整数n.Output输出nn乘法口诀表。每个乘法口诀表中的任何一个乘式占6列,不足6列的在后面补空格。同一行2个乘式之间有一个空格。两个乘法口诀表之间有一个空行。注意乘法口诀中每一行最后没有

2、空格,如4R4=16和5R5=25后面都没有空格的。SampleInput126SampleOutput1R1=11R1=11R2=22R2=41R1=11R2=22R2=41R3=32R3=63R3=91R4=42R4=83R4=124R4=161R5=52R5=103R5=154R5=205R5=251R6=62R6=123R6=184R6=245R6=306R6=36HINT%-2d表示对齐方式为左对齐例如,printf(%-6d,100);将输出:100#include#includeintmain()intn,i,j;chara1010;while(scanf(%d,&n)!=EOF

3、)for(i=1;i=n;i+)for(j=1;j=i-1;j+)aij=jRi;printf(%dR%d=%-2d,j,i,aij);printf(%dR%d=%-2d,i,i,iRi);printf(n);printf(n);return0;ProblemG:打印金字塔TimeLimit:1SecMemorRLimit:64MBSubmit:6241Solved:3777Description请编写程序输出金字塔图形。Input多个测试数据。每个测试数据输入一个整数n(1=n=9)Output输出n层金字塔。SampleInput13SampleOutputRRRRRRRRRRHINT用双

4、重循环做,外循环代表行数,第一个内循环输出空格,第二个内循环输出Rfor(;)for(;)/输出空格for(;)/输出R/外循环#includeintmain()intn,i,j,k;while(scanf(%d,&n)!=EOF)for(i=1;i=n;i+)for(j=1;j=n-i;j+)printf();for(k=1;k2Ri;k+)printf(R);printf(n);return0;3920:老外买瓷砖TimeLimit:1SecMemorRLimit:64MBSubmit:1344Solved:656Description大酬宾活动的第三天,店里突然来了一个老外。还是高中生的

5、小娥在开店。可怜的小娥被老外流畅的外语给吓蒙了。老外没办法,只好一个字母一个字母地把订单念给小娥。吓蒙的小娥只记得有几个元音字母了(aeiou),不过很不幸的是她把H也当作了A,R当作了I.Input第一行输入一个整数n,表示老外说了多少句话。然后是n行,每一行是老外说的外语。Output对于老外说的每句话,请统计出小娥记得的各元音字母的个数(包含记错的),每个元音1行,格式见例子SampleInput2Hello.HowareRou!SampleOutputa:1e:1i:0o:1u:0a:2e:1i:1o:2u:1HINT一句话不超过50个字符#includevoidf(intRa,cha

6、rRs)while(Rs)switch(Rs)caseh:caseH:caseA:casea:a0+;break;caseE:casee:a1+;break;caseR:caseR:caseI:casei:a2+;break;caseO:caseo:a3+;break;caseU:caseu:a4+;break;s+;intmain()chars200;inta5;intn,i,j;scanf(%d,&n);getchar();for(i=0;in;i+)for(j=0;j5;j+)aj=0;gets(s);f(a,s);printf(a:%dne:%dni:%dno:%dnu:%dn,a0,

7、a1,a2,a3,a4);return0;ProblemA:双层金字塔TimeLimit:1SecMemorRLimit:64MBSubmit:4962Solved:3290Description输出双层金字塔。Input多个测试数据。每个测试数据输入一个整数n(2=n=9)Output输出双层金字塔。SampleInput25SampleOutputRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR#includeintmain()intn,i,j,a,b;while(scanf(%d,&n)!=EOF)for(i=1;i=n;i+)for(j=1;

8、j=n-i;j+)printf();for(j=1;j=2Ri-1;j+)printf(R);printf(n);for(a=1;an;a+)for(b=1;b=a;b+)printf();for(b=1;b=2R(n-a)-1;b+)printf(R);printf(n);return0;3919:堆瓷砖TimeLimit:1SecMemorRLimit:64MBSubmit:1819Solved:750Description上次来定制的客户买走了不少瓷砖,确实给公司带来了不少利润,可是望着裁剪下来的瓷砖,陈盖历发愁了。这些尺寸不一的瓷砖堆的满地都是。哎,还是想个办法把他们堆成堆吧。当然堆的

9、时候最大的要放在下面,绝对不允许大的瓷砖放在小的上面,否则变形了下次就不好卖了。你能帮忙把这些瓷砖堆起来吗?Input第一行输入一个整数n,表示共要堆成的堆数。然后是n行,每行先输入1个整数m,表示这一堆有m块瓷砖,然后紧跟着输入m个整数,表示瓷砖的尺寸Output对于每一堆输出一行,分别是该堆的瓷砖尺寸,按照从大到小进行排列,2个数之间有一个空格SampleInput2434563849SampleOutput6543984HINTnm不会超过5012345678910111213141516171819202122232425262728293031323334#includeintmai

10、n()intn,i,j,l,a50,indeR,t,k;scanf(%d,&n);for(k=0;kn;k+)scanf(%d,&l);for(j=0;jl;j+)scanf(%d,&aj);for(j=0;jl;j+)indeR=j;for(i=j+1;il;i+)if(aindeRai)indeR=i;t=aindeR;aindeR=aj;aj=t;for(j=0;jl-1;j+)printf(%d,aj);printf(%dn,al-1);return0;3918:定制瓷砖TimeLimit:1SecMemorRLimit:64MBSubmit:1746Solved:1092Descri

11、ption新年大酬宾活动一开展,吸引了好多客户。这天来了一个客户,他有一个特别的要求。他需要定制不同尺寸的瓷砖,用来装修在杭州、临安等地买的10几套房子。他的要求是这样的,他报出房间的长与宽(当然都是整数),然后你按照他的要求给他一个瓷砖的尺寸(正方形的,也是整数),以该尺寸的瓷砖能正好铺满他要求的房间。当然他希望瓷砖的数量越少越好。ACM出身的陈盖历嘿嘿一笑,不就是求最大公约数吗?当然程序还是要你来写的。Input第一行输入一个整数n,表示客户的房间数。然后是n行,每行输入2个整数,分别表示房间的长与宽Output对于每组数据,输出一个整数,表示瓷砖的边长SampleInput261268S

12、ampleOutput62#includeintmain()intn,i,a,b,t,j,m;scanf(%d,&n);for(i=1;ib)t=a;a=b;b=t;for(j=a;j=2;j-)if(a%j=0&b%j=0)break;m=j;printf(%dn,j);return0;4135:新年挂灯笼TimeLimit:1SecMemorRLimit:128MBSubmit:1025Solved:525Description又是新的一年,家家户户挂灯笼。请你编写一个程序,能根据需要打印出灯笼的图案。Input多组测试数据,先输入一个整数t,表示组数,然后输入然后输入t行,每行输入1个整数n(n不会大于9),代表灯笼上半部分的层数Output对于每组测试数据输出对应的灯笼图案SampleInput3123SampleOutputRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR#includeintmain()intn;scanf(%d,&n);for(inti=1;i=n;i+)intR;intj;scanf(%d,&R);for(j=1;j=R;j+)for(intk=1;k=R-j;k+)printf();for(intk=0;k(R+2R(j-1);k+)printf(R);printf(n);

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 其它考试类文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号