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;
}

ACM程序设计选修课——1030: Hungar的时尚球场(水题+耐心)的更多相关文章

  1. ACM程序设计选修课——1036: Hungar的菜鸟赛季(YY)

    1036: Hungar的菜鸟赛季 Time Limit: 1 Sec  Memory Limit: 64 MB Submit: 20  Solved: 14 [Submit][Status][Web ...

  2. ACM程序设计选修课——1031: Hungar的得分问题(二)(杨辉三角+二进制转换)

    1031: Hungar的得分问题(二) 时间限制: 1 Sec  内存限制: 64 MB 提交: 15  解决: 10 [提交][状态][讨论版] 题目描述 距离正式选秀时间越来越近了,今天Hung ...

  3. ACM程序设计选修课——Problem E:(ds:图)公路村村通(Prim)

    问题 E: (ds:图)公路村村通 时间限制: 1 Sec  内存限制: 128 MB 提交: 9  解决: 5 题目描述 现有村落间道路的统计数据表中,列出了有可能建设成标准公路的若干条道路的成本, ...

  4. ACM程序设计选修课——Problem F:(ds:图)旅游规划(优先队列+SPFA)

    问题 F: (ds:图)旅游规划 时间限制: 1 Sec  内存限制: 128 MB 提交: 14  解决: 4 题目描述 有了一张自驾旅游路线图,你会知道城市间的高速公路长度.以及该公路要收取的过路 ...

  5. ACM程序设计选修课——Problem E:(ds:图)公路村村通(优先队列或sort+克鲁斯卡尔+并查集优化)

    畅通工程 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  6. ACM程序设计选修课——1018: Common Subsequence(DP)

    问题 L: Common Subsequence 时间限制: 1 Sec  内存限制: 32 MB 提交: 70  解决: 40 [提交][状态][讨论版] 题目描述 A subsequence of ...

  7. ACM程序设计选修课——Problem D: (ds:树)合并果子(最优二叉树赫夫曼算法)

    Problem D: (ds:树)合并果子 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 80  Solved: 4 [Submit][Status][ ...

  8. ACM程序设计选修课——1076汇编语言(重定向+模拟)

    1076: 汇编语言 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 34  Solved: 4 [Submit][Status][Web Board] ...

  9. ACM程序设计选修课——1057: Beautiful Garden(模拟+耐心调试)

    1057: Beautiful Garden Time Limit: 5 Sec  Memory Limit: 128 MB Submit: 25  Solved: 12 [Submit][Statu ...

随机推荐

  1. [dp][uestc oj][最长上升子序列] LIS N - 导弹拦截

    N - 导弹拦截 Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submit  ...

  2. [学习笔记] SSD代码笔记 + EifficientNet backbone 练习

    SSD代码笔记 + EifficientNet backbone 练习 ssd代码完全ok了,然后用最近性能和速度都非常牛的Eifficient Net做backbone设计了自己的TinySSD网络 ...

  3. [神经网络]一步一步使用Mobile-Net完成视觉识别(一)

    1.环境配置 2.数据集获取 3.训练集获取 4.训练 5.调用测试训练结果 6.代码讲解 本文是第一篇,环境配置篇. 先打开tensorflow object detection api 看看需要什 ...

  4. 在linux命令行下如何访问网址

    1. wget Ubuntu系统自带,会将访问的首页下载到本地 admin@iZj6c9c6vaqj1i0a9j7h78Z:~$ wget www.baidu.com --2019-04-20 17: ...

  5. python_92_面向对象初体验

    class dog: def __init__(self,name): self.name=name def bulk(self): print('%s汪汪汪!'%self.name) d1=dog( ...

  6. WINDOWS-基础:Thread.Sleep(0)

    我们可能经常会用到 Thread.Sleep 函数来使线程挂起一段时间.那么你有没有正确的理解这个函数的用法呢?思考下面这两个问题: 假设现在是 2008-4-7 12:00:00.000,如果我调用 ...

  7. Oracle Real Application Clusters (RAC)

    Oracle Real Application Clusters — 概述 包含 Oracle Real Application Clusters (RAC) 选件的 Oracle 数据库允许依托一组 ...

  8. Java替换手机号掩码

    String tel = "18304072984"; // 括号表示组,被替换的部分$n表示第n组的内容 tel = tel.replaceAll("(\\d{3})\ ...

  9. Slasher Flick-freecodecamp算法题目

    Slasher Flick(截断数组) 要求 返回一个数组被截断n个元素后还剩余的元素,截断从索引0开始. 思路 利用.splice(0,howMany)删除数组中索引从0开始的howMany个元素 ...

  10. Ubuntu Server 18.04 LTS安装

    Please choose your preferred language. 选择您喜欢的语言 这里直接选择[English] Keyboard configuration 键盘配置 Please s ...