ACM程序设计选修课——1030: Hungar的时尚球场(水题+耐心)
2024-09-06 04:29:02
1030: Hungar的时尚球场
Time Limit: 1 Sec Memory Limit: 64 MB
Submit: 14 Solved: 8
[Submit][Status][Web
Board]
Description
从NBA新秀训练中心回来以后,Hungar意识到自己的水平还不足以在NBA立足,于是他决定每天去球场练习。
这天他来到一个球场,却发现这个球场十分破旧不堪,这让他无法忍受,在他看来这个球场应该是这样的: 球场的大小是n*n,而且这个球场应该被大写的英文字母所填充,填充规则是这样的,球场的最外面一圈用'A'填充,里面一圈用'B'填充,....., 直到球场被填满,如果填到'Z'棋盘还没 满的话,接下来用的就又是'A',‘B’..以此类推
现在告诉你球场的大小,请告诉Hungar填满以后的球场是什么样子的。
Input
第一行一个整数T(T <=100), 代表有T组数据.
对于每一组数据,包含一个整数n(1 <= n <= 100).
Output
第一行输出”Case #X: ”(不包括引号),X代表第X组数据
n行,每行n个字符,代表填充以后的球场.
Sample Input
2
2
3
Sample Output
Case #1:
AA
AA
Case #2:
AAA
ABA
AAA
题目本身很简单,就是需要耐心不停地调试来控制变量的范围。与HDU2074叠框很相似
,但又稍有不同。本想拿那道代码来当模版的,想想还是算了,简单的还是自己写吧。
写的比叠框那代码要好。简单易懂。
代码:
#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<queue>
#include<set>
#include<map>
#include<sstream>
#include<algorithm>
#include<cmath>
#include<cstdlib>
using namespace std;
char list[600][600];
int n;
void change(const int &x,const int &y,const char &c)//按顺序包边上→,左↑,右←,右↓
{
for (int i=x; i<=n-1-x; i++)
{
list[x][i]=c;
}
for (int i=n-y-1; i>=y; i--)
{
list[i][y]=c;
}
for (int i=n-1-x; i>=x; i--)
{
list[n-1-x][i]=c;
}
for (int i=y; i<=n-1-y; i++)
{
list[i][n-1-y]=c;
}
}
int main (void)
{
int t,i,j;
char c;
cin>>t;
for (int q=1; q<=t; q++)
{
memset(list,0,sizeof(list));//清空一下
cin>>n;
c='A';
for (int i=0; i<=n/2; i++)
{
if(c>'Z')
c-=26;
change(i,i,c);
c++;
}
cout<<"Case #"<<q<<":"<<endl;
for (int i=0; i<n; i++)
{
for (int j=0; j<n; j++)
{
cout<<list[i][j];
}
cout<<endl;
}
}
return 0;
}
最新文章
- python单元测试unittest
- SQL Server复制情况下的高可用方案(一)镜像+复制
- 剑指offer题目41-50
- android开发出现No Launcher activity found!解决方案
- xcode SVN
- mysql实现高效率随机取数据
- SQL Server 数据库设计
- linux下使用find xargs grep查找文件及文件内容
- DataGridView ——管理员对用户的那点操作
- VSTO 为Office已有右键菜单添加自己的菜单项(word,Excel)
- 算法导轮之B树的学习
- PHP MySQL Where 子句
- Thymeleaf的超链接与AJAX的跳转问题
- 转载:ORA-12516 “TNS监听程序找不到符合协议堆栈要求的可用处理程序” 解决方案
- 让一个小div在另一个大div里面 垂直居中的四种方法
- (转)C/C++ 程序设计员应聘常见 面试笔试 试题深入剖析
- Kafka+Storm+HDFS 整合示例
- Postman—使用数据文件
- mysql 修改初始化密码【转】
- windows下整数溢出分析
热门文章
- Linux OpenGL 实践篇-16 文本绘制
- prometheus-简介及安装
- python之可迭代对象
- E​x​c​h​a​n​g​e​邮​箱​搭​建
- untiy3d action管理机制的编写
- xmpp 协议详解
- matplotlib subplot 子图
- NOIP复习之1 数学数论
- 【动态规划】bzoj1584: [Usaco2009 Mar]Cleaning Up 打扫卫生
- [LUOGU]P1508 Likecloud-吃、吃、吃