新手P1830轰炸三指针越界求解
  • 板块学术版
  • 楼主Zhangzehao00118
  • 当前回复10
  • 已保存回复10
  • 发布时间2024/8/26 22:44
  • 上次更新2024/8/27 10:51:38
查看原帖
新手P1830轰炸三指针越界求解
1319117
Zhangzehao00118楼主2024/8/26 22:44
#include<bits/stdc++.h>
using namespace std;


int main(){
    long long int n,m,x,y,x1,y1,x2,y2,f1,f2,sum=0;//n到y2都是题目中的变量劳烦各位大佬去看一眼,f1,f2是题中关键点的坐标,sum是计数器,计何时轰炸最后一轮
    cin >> n >> m >> x >> y;
    long long int a[n][m] = {0};//a数组是最后一次轰炸
    long long int b[n][m] = {0};/b数组是轰炸次数
    for(int k = 0;k<x;k++){
    	cin>>x1>>y1>>x2>>y2;
    	for(int i = x1;i<=x2;i++){
    		for(int j = y1;j<=y2;j++){
    			b[i][j]++;
    			sum++;
    			a[i][j] = sum;
			}
		}
	}

	for(int k = 0;k<y;k++){
    	cin>>f1>>f2;
    	if(b[f1][f2]!=0){
    		cout << "Y" << " " << b[f1][f2] << " " << a[f1][f2]/10 << endl;//这里的除以十是还没调试好数组a随便打的 
		}
		else{
			cout << "N";
		}
	}
    return 0;
}

新手求解:以上代码的测试用例4中会RE,下载测试数据后发现是指针越界,有什么方法解决吗

2024/8/26 22:44
加载中...