全RE
查看原帖
全RE
1120842
XYM20230422楼主2023/12/18 17:29
#include <bits/stdc++.h>
using namespace std;
int a[514][514],a1[514][514],s1,s2,q=1;
int z1,z2,fx,r;

int main(){
	cin>>s1>>s2;
	for (int i=1;i<=s1;i++){
		for (int j = 1;j<=s1;j++){
			a[i][j]=q;
			a1[i][j]=q;
			q++;
		}
	}
	for (int werwer=0;werwer<s2;werwer++){
		cin>>z1>>z2>>r>>fx;
		if(fx==0){
			for (int i=1;i<=r;i++){
				/*				a1[z1+i][z2]=a[z1][z2+i];
				  a1[z1][z2-i]=a[z1+i][z2];
				  a1[z1-i][z2]=a[z1][z2-i];
				  a1[z1][z2+i]=a[z1-i][z2];
				 */
				a1[z1-i][z2-i]=a[z1+i][z2-i];
				a1[z1-i][z2+i]=a[z1-i][z2-i];
				a1[z1+i][z2+i]=a[z1-i][z2+i];
				a1[z1+i][z2-i]=a[z1+i][z2+i];
				
				
				for (int j=0;j<2*r-1;j++){
					a1[z1+i][z2+i-1-j]=a[z1-i+1+j][z2+i];//3=4?
					a1[z1+i-1-j][z2-i]=a[z1+i][z2+i-1-j];//4=3
					a1[z1-i][z2-i+1+j]=a[z1+i-1-j][z2-i];//1=4
					a1[z1-i+1+j][z2+i]=a[z1-i][z2-i+1+j];//=1
				}
			}
		}
		else if(fx==1){
			for (int i=1;i<=r;i++){
				/*				a1[z1+i][z2]=a[z1][z2+i];
				  a1[z1][z2-i]=a[z1+i][z2];
				  a1[z1-i][z2]=a[z1][z2-i];
				  a1[z1][z2+i]=a[z1-i][z2];
				 */
				a1[z1+i][z2-i]=a[z1-i][z2-i];
				a1[z1-i][z2-i]=a[z1-i][z2+i];
				a1[z1-i][z2+i]=a[z1+i][z2+i];
				a1[z1+i][z2+i]=a[z1+i][z2-i];
				for (int j=0;j<2*r-1;j++){
					a1[z1-i+1+j][z2+i]=a[z1+i][z2+i-1-j];
					a1[z1+i][z2+i-1-j]=a[z1+i-1-j][z2-i];
					a1[z1+i-1-j][z2-i]=a[z1-i][z2-i+1+j];
					a1[z1-i][z2-i+1+j]=a[z1-i+1+j][z2+i];
				}
			}
		}
		for (int i=1;i<=s1;i++){
			for (int j = 1;j<=s1;j++){
				a[i][j]=a1[i][j];
			}
		}
	}
	for (int i=1;i<=s1;i++){
		for (int j = 1;j<=s1;j++){
			cout << a[i][j]<<" ";
		}
		cout <<endl;
	}
	return 0;
}
2023/12/18 17:29
加载中...