Description
小明希望用星号拼凑,打印出一个大X,他要求能够控制笔画的宽度和整个字的高度。
为了便于比对空格,所有的空白位置都以句点符来代替。
要求输入两个整数m n,表示笔的宽度,X的高度。用空格分开(0<m<n, 3<n<1000, 保证n是奇数)
要求输出一个大X
Input
要求输入两个整数m n,表示笔的宽度,X的高度。用空格分开(0<m<n, 3<n<1000, 保证n是奇数)
Output
要求输出一个大X
Sample Input
3 9
Sample Output
***.....***
.***...***.
..***.***..
...*****...
....***....
...*****...
..***.***..
.***...***.
***.....***
#include<bits/stdc++.h>
using namespace std;
char a[10001][10001];
int main()
{
int i,j,n,m,k,zczf,ii,jj;
cin>>n>>m;
k=(n+m)-1;
zczf=k-n-n;
ii=jj=0;
for(i=1;i<=(m+1)/2;i++)
{
ii++;
jj=0;
for(j=1;j<=i-1;j++)
{
jj++;
cout<<'.';
a[ii][jj]='.';
}
if(k-(i-1)-(i-1)<=n*2)
{
for(j=1;j<=k-(i-1)-(i-1);j++)
{
jj++;
cout<<'*';
a[ii][jj]='*';
}
}
else
{
for(j=1;j<=n;j++)
{
jj++;
cout<<'*';
a[ii][jj]='*';
}
for(j=1;j<=zczf;j++)
{
jj++;
cout<<'.';
a[ii][jj]='.';
}
zczf-=2;
for(j=1;j<=n;j++)
{
jj++;
cout<<'*';
a[ii][jj]='*';
}
}
for(j=1;j<=i-1;j++)
{
jj++;
cout<<'.';
a[ii][jj]='.';
}
cout<<endl;
}
for(i=ii-1;i>=1;i--)
{
for(j=1;j<=jj;j++)
{
cout<<a[i][j];
}
cout<<endl;
}
return 0;
}