叠筐
来源:互联网 发布:js array set 去重 编辑:程序博客网 时间:2024/05/17 00:12
叠筐
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 20592 Accepted Submission(s): 5385
Problem Description
需要的时候,就把一个个大小差一圈的筐叠上去,使得从上往下看时,边筐花色交错。这个工作现在要让计算机来完成,得看你的了。
Input
输入是一个个的三元组,分别是,外筐尺寸n(n为满足0<n<80的奇整数),中心花色字符,外筐花色字符,后二者都为ASCII可见字符;
Output
输出叠在一起的筐图案,中心花色与外筐花色字符从内层起交错相叠,多筐相叠时,最外筐的角总是被打磨掉。叠筐与叠筐之间应有一行间隔。
Sample Input
11 B A5 @ W
Sample Output
AAAAAAAAA ABBBBBBBBBAABAAAAAAABAABABBBBBABAABABAAABABAABABABABABAABABAAABABAABABBBBBABAABAAAAAAABAABBBBBBBBBA AAAAAAAAA @@@ @WWW@@W@W@@WWW@ @@@
/*分类:字符处理 来源: hdu 叠筐思路:很明显这里的n有两种情况,(n+1)/2%2为奇数时交换a,b,偶数不用交换。 */#include<stdio.h>#include<string.h>#include<iostream>using namespace std;int main(){char a,b,t;int n;char str[99][99];int r=0;while(cin>>n>>a>>b){if(r++)printf("\n");if(n==1){printf("%c\n",a);continue;}if((n+1)/2%2==1){t=a;a=b;b=t;}for(int i=0;i<n;i++)str[0][i]=b;for(int i=1;i<=n/2;i++){memcpy(str[i],str[i-1],sizeof(str[i-1]));for(int k=i;k<n-i;k++){if(i%2==1)str[i][k]=a;elsestr[i][k]=b;}}str[0][0]=str[0][n-1]=' ';for(int i=0;i<=n/2;i++){{for(int j=0;j<n;j++)printf("%c",str[i][j]);}printf("\n");}for(int i=n/2-1;i>=0;i--){{for(int j=0;j<n;j++)printf("%c",str[i][j]);}printf("\n");}}return 0;}
0 0
- 叠筐
- 叠筐
- 叠筐
- 叠筐
- 叠筐
- 叠筐
- 叠筐
- 叠筐
- 叠筐
- 叠筐
- hdu2074-叠筐
- 叠筐 2074
- sdjzu2121叠筐
- HDU_2074叠筐
- 2074 叠筐
- HDU2074 叠筐
- HDU_2074 叠筐
- hd2074 叠筐
- 解决java compiler level does not match the version of the installed java project facet
- Java学习之character类
- ActiveMQ使用步骤
- Eclipse利用命令行启动代理快速安装插件
- spring(七)---基于mysql数据库的三种连接池的配置
- 叠筐
- Sudoku(数独缩小版(4*4))
- H.323 Plus voip
- 12222
- python从子线程中获得返回值
- Python thread 多线程
- Hibernate映射数据库关系
- Sql之left join(左关联)、right join(右关联)、inner join(自关联)的区别
- 基于SpringMVC框架使用ECharts3.0实现折线图,柱状图,饼状图,的绘制(上篇)