問題描述
利用字母可以組成一些美麗的圖形,下面給出了一個例子:
ABCDEFG
BABCDEF
CBABCDE
DCBABCD
EDCBABC
這是一個5行7列的圖形,請找出這個圖形的規律,並輸出一個n行m列的圖形。
輸入格式
輸入一行,包含兩個整數n和m,分別表示你要輸出的圖形的行數的列數。
輸出格式
輸出n行,每個m個字符,爲你的圖形。
樣例輸入
5 7
樣例輸出
ABCDEFG
BABCDEF
CBABCDE
DCBABCD
EDCBABC
數據規模與約定
1 <= n, m <= 26。
分析:看這這個輸出樣例!!像不像個矩陣!拿A舉例,每個A所在的位置都是(x,x),相減永遠爲0,而B則是行列相減爲1(這裏用絕對值),所以規律很好找出,利用每個字母所在的位置相減爲固定值即可:
//利用矩陣座標;
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int i,k=0,m,n;
char a[105];
char x='A';
for(i=1;i<27;i++)
{
a[k++]=x++;
}
cin>>m>>n;
for(i=1;i<=m;i++)
{
for(int j=1;j<=n;j++)
{
cout<<a[abs(i-j)];
}
cout<<endl;
}
return 0;
}