萌新求教,这题用二维数组可以做吗
查看原帖
萌新求教,这题用二维数组可以做吗
935299
yashi258楼主2023/2/20 23:14

按题目的意思,数组空间应该是arr[10000][200000],这明显超了,实际试了一下也是报错MLE,把数组改成[1000][10000],结果是50分,RE五处,往大再调一点酒MLE,小了就UA,太难了 下面是代码,写的时候也报了几次错,大致好像是堆栈异常,内存访问异常之类的,有大佬可以帮忙看下吗

#include<stdio.h>
int main()
{
	int n = 0;
	scanf("%d", &n);
	int i = 0;
	int arr[1000][20000] = { 0 };
	for (i = 1; i <= n; i++)
	{
		int x, y, a, b;
		scanf("%d%d%d%d", &x, &y, &a, &b);
		int j, k;
		for (j = 0; j <= a; j++)
		{
			for (k = 0; k <= b; k++)
			{
				arr[x + j][y + k] = i+1;
			}
		}
	}
	int x1, y1;
	scanf("%d%d", &x1, &y1);
	printf("%d", arr[x1][y1]-1);
	return 0;
}
2023/2/20 23:14
加载中...