九度oj 1432 叠筐
来源:互联网 发布:mysql约束关系包括北京 编辑:程序博客网 时间:2024/06/03 20:33
题目1432:叠筐 时间限制: 1 秒 内存限制: 128 兆 特殊判题: 否 提交: 8118 解决: 1988 题目描述: 把一个个大小差一圈的筐叠上去,使得从上往下看时,边筐花色交错。这个工作现在要让计算机来完成,得看你的了。 输入: 输入是一个个的三元组,分别是,外筐尺寸n(n为满足0<n<80的奇整数),中心花色字符,外筐花色字符,后二者都为ASCII可见字符; 输出: 输出叠在一起的筐图案,中心花色与外筐花色字符从内层起交错相叠,多筐相叠时,最外筐的角总是被打磨掉。叠筐与叠筐之间应有一行间隔。 样例输入: 11 B A 5 @ W 样例输出: AAAAAAAAA ABBBBBBBBBA ABAAAAAAABA ABABBBBBABA ABABAAABABA ABABABABABA ABABAAABABA ABABBBBBABA ABAAAAAAABA ABBBBBBBBBA AAAAAAAAA @@@ @WWW@ @W@W@ @WWW@ @@@#include<iostream>using namespace std;#include<stdio.h>int main(){int n;char a,b;int outPutBuf[82][82];//用于预排版的输出缓存bool first=true;//是否为第一组数据标志 while(scanf("%d %c %c",&n,&a,&b)==3){//此处scanf 之间必须有空格,否则会将空格赋值给%c if(first==true){first=false;//若是第一组数据标志标记成false } else printf("\n");for(int i=1,j=1;i<=n;i+=2,j++){int x=n/2+1,y=x;//中心点坐标 x-=j-1;y-=j-1;//计算 每个圈右上角点的坐标char c=j%2==1?a:b;//计算当前圈需要使用哪个字符for(int k=1;k<=i;k++){//对当前圈进行赋值 outPutBuf[x+k-1][y]=c;//左边赋值 outPutBuf[x][y+k-1]=c;//上 outPutBuf[x+i-1][y+k-1]=c;//右 outPutBuf[x+k-1][y+i-1]=c; //下 } }if(n!=1){outPutBuf[1][1]=' ';outPutBuf[n][1]=' ';outPutBuf[1][n]=' ';outPutBuf[n][n]=' ';} for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){printf("%c",outPutBuf[i][j]);}printf("\n");}}return 0;}
阅读全文
0 0
- 九度OJ-1432:叠筐
- 九度oj 1432 叠筐
- 九度OJ 题目1432:叠筐
- 题目1432:叠筐 九度OJ
- 【学习笔记】〖九度OJ〗题目1432:叠筐
- 【九度OJ】:九度OJ 1050
- 【九度OJ】:九度OJ 1053
- 【九度OJ】:九度OJ 1056
- 【九度OJ】:九度OJ 1059
- 【九度OJ】:九度OJ 1206
- 九度OJ:1000
- 【九度OJ】 1006
- 九度 OJ 1499
- 九度OJ-1002
- 九度OJ-1003
- 九度OJ 1004
- 九度OJ 1003
- 九度oj 采药
- Log4j 1.2.7版本使用手册
- [EMACS]helm学习备忘
- 自主编程实现单链表
- 关于使用IO复用和多线程问题
- UVA725Division
- 九度oj 1432 叠筐
- shell中的eval与$(())
- FPTree算法笔记
- PAT (Advanced Level) Practise 1020 Tree Traversals (25)
- 有关no Session问题的解决
- ip route show中src关键字
- ElasticSearch安装,ES启动,检查ES是否成功,Kibana下载和安装,Kibana的使用
- 显示处理结果
- Apache Shiro 标签方式授权