测试全错,求助,是否有大佬可以提供一下数据点
查看原帖
测试全错,求助,是否有大佬可以提供一下数据点
1051586
ZHYaiSYR楼主2023/9/16 18:57
#include<iostream>
#include<stdio.h>
#include <stdlib.h>
#include<string.h> 
#include<math.h>
int main(){
	char a[505][505], b[505][505];
	int n, m, cot = 1;
	scanf("%d %d", &n, &m);
	for(int i = 0; i < n; i++)
	for(int j = 0; j < n; j++)a[i][j] = cot, b[i][j] = cot, cot++;
	for(int i = 0; i < m; i++)
	{
		int x, y, r, z;
		scanf("%d %d %d %d", &x, &y, &r, &z);
		x--, y--;
		int o = x - r, p = y - r;
		if(z){
			for(int k = x - r; k <= x + r; k++)
			for(int j = y - r; j <= y + r; j++)
			{
				b[k][j] = a[j - p + o][2 * r - k + o + p];
			}
		}
		else{
			for(int k = x - r; k <= x + r; k++)
			for(int j = y - r; j <= y + r; j++)
			{
				b[k][j] = a[2 * r - j + o + p][k - o + p];
			}
		}
		for(int k = x - r; k <= x + r; k++)
		for(int j = y - r; j <= y + r; j++)a[k][j] = b[k][j];
	}
	for(int i = 0; i < n; i++)
	for(int j = 0; j < n; j++)
	{
		printf("%d", a[i][j]);
		if(j != n - 1)printf(" ");
		else if(i != n - 1)printf("\n");
	}
	return 0;
}
2023/9/16 18:57
加载中...