1251: 字母圖形?[水題]
時間限制: 1 Sec?內存限制: 128 MB提交: 140?解決: 61?統計
題目描述
利用字母可以組成一些美麗的圖形,下面給出了一個例子:
ABCDEFG
BABCDEF
CBABCDE
DCBABCD
EDCBABC
這是一個5行7列的圖形,請找出這個圖形的規律,并輸出一個n行m列的圖形。
輸入
輸入一行,包含兩個整數n和m,分別表示你要輸出的圖形的行數的列數。
輸出
輸出n行,每個m個字符,為你的圖形。
1 ?< = ?n, ?m ?< = ?26
樣例輸入
5 7
樣例輸出
ABCDEFG
BABCDEF
CBABCDE
DCBABCD
EDCBABC
來源
藍橋杯
?
用一個棧和兩個隊列(其實用一個隊列應該也可以)來維護就可以了


#include<cstdio> #include<stack> #include<queue>using namespace std;int main() {int n,m;char c;scanf("%d %d", &n, &m);queue<char> que1;queue<char> que2;stack<char> s;for(int i = 1; i < 26; i++){c = 'A' + i;que1.push(c);}for(int i = m-1; i >= 0; i--){c = 'A' + i;que2.push(c);}for(int i = 1; i <= n; i++){for(int j = 0; j < m; j++){c = que2.front();que2.pop();s.push(c);que2.push(c);}for(int k = 0; k < m; k++){printf("%c", s.top());s.pop();}c = que1.front();que1.pop();que2.push(c);que2.pop();printf("\n");}return 0; }
?