10分求求求求助
查看原帖
10分求求求求助
773747
yutong_Seafloor楼主2023/9/3 19:16
#include<bits/stdc++.h>
using namespace std;
int n,m,w,l,i,j,yt[521][521],k;
char ans[1010][1010];
char a[20][20]=
{
	"..+---+",
	"./   /|",
	"+---+ |",
	"|   | +",
	"|   |/.",
	"+---+..",
};
void qw(int x,int y)
{
	for(int i=0;i<6;i++)
	for(int j=0;j<7;j++)
	if(yt[i][j]!='.')
	ans[x+i][y+j]=a[i][j];
}
int main()
{
	cin>>m>>n;
	memset(ans,'.',sizeof(ans));
	w=n*4+1+m*2;
	for(i=0;i<m;i++)
	for(j=0;j<n;j++)
	{
		cin>>yt[i][j];
		l=max(l,yt[i][j]*3+1+(m-i)*2);
	}
	for(i=0;i<m;i++)
	for(j=0;j<n;j++)
	for(k=1;k<=yt[i][j];k++)
	qw(l-(k*3)-2*(m-i),j*4+1+(m-i-1)*2);
	for(i=1;i<=l;i++)
	{
		for(j=1;j<=w;j++)
			cout<<ans[i][j];
		cout<<endl;
	}
	return 0;
}

这个出题人真应该被群殴

2023/9/3 19:16
加载中...