当前位置: 代码迷 >> 综合 >> XTU OJ 1293 (二维数组覆盖)
  详细解决方案

XTU OJ 1293 (二维数组覆盖)

热度:53   发布时间:2023-12-04 21:27:26.0

采用二维数组覆盖法....很显然这个方法不适合这种图形(hei tui)

#include<stdio.h>
#include<string.h>
char a[60][60]; 
int main()
{int k;scanf("%d",&k);while(k--){int n;scanf("%d",&n);int temp=n-1;int p=0;int y=0;memset(a,' ',sizeof(a));while(n>=0){n-=1;p=0;for(int j=0;j<=n;j++){for(k=0;k<p*2+1;k++)			a[j+y][n+k-j+y]='A'+n;if(temp==n) a[j][n+k-j]='\0';p++;}for(int j=1;j<=n;j++){p=(n-j)*2+1;for(k=0;k<p;k++)		a[j+n+y][k+j+y]='A'+n;if(temp==n) a[j+n][k+j]='\0';}y++;}for(int i=0;i<2*temp+1;i++) 	printf("%s\n",a[i]);//记得加a[i] }return 0;
}