真是想不出来了,各位大佬帮帮我吧
查看原帖
真是想不出来了,各位大佬帮帮我吧
1783496
haoga123456楼主2025/7/21 16:13

各位大佬能帮我debug吗,就A两个测试点,在线等挺急的

#include<bits/stdc++.h>
using namespace std;
const int N=25;
int n;
struct node{
	int r,s,u,d;
	char b;
}a[N];
int c;
int ansx,ansy;
char s[1010][1010];
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i].b>>a[i].r>>a[i].s>>a[i].u>>a[i].d;
	}
	int x=1,y=1,dx,dy,ux=1,uy=1;
	for(int i=0;i<n;i++){
		x=ux,y=uy;
		cin>>c;
		dx=x+a[c].r-1;
		dy=y+a[c].s-1; 
		for(int i=x;i<=dx;i++){
			for(int j=y;j<=dy;j++){
				s[i][j]=a[c].b;
			}
		}
		if(dx>ansx){
			ansx=dx;
		}
		if(dy>ansy){
			ansy=dy;
		}
		if(a[c].u==0){
			uy=dy-1;
			ux=a[c].d+1;
		}
		else{
			uy=a[c].d+1;
			ux=dx+1;
		}
	}
	cout<<ansx<<" "<<ansy<<endl;
	for (int i=ansx;i>=1;i--){
		for (int j=1;j<=ansy;j++){
			if (s[i][j]=='\0')s[i][j]='.';
			cout<<s[i][j];
		}
		cout<<endl;
	}
	return 0;
}
2025/7/21 16:13
加载中...