ACM程序设计选修课——1030: Hungar的时尚球场(水题+耐心)
生活随笔
收集整理的這篇文章主要介紹了
ACM程序设计选修课——1030: Hungar的时尚球场(水题+耐心)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
1030: Hungar的時尚球場
Time Limit:?1 Sec??Memory Limit:?64 MBSubmit:?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 3Sample 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; }轉載于:https://www.cnblogs.com/Blackops/p/5356410.html
總結
以上是生活随笔為你收集整理的ACM程序设计选修课——1030: Hungar的时尚球场(水题+耐心)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 想做测试经理的看过来
- 下一篇: Android-应用性能测试