题目链接:
P3397 地毯 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
题目大意:
就是找给定的坐标中每个坐标被覆盖了几次
思路:
二维数组,前缀和
坑点:
一定要看清坐标循环的位置
代码:
#include<stdio.h>
#include<iostream>
#include<algorithm>
using namespace std;
int n,m;
int num[1010][1010];
int main()
{
cin>>n>>m;
int x1,x2,y1,y2;
while(m--)
{
cin>>x1>>y1>>x2>>y2;
for(int i=x1;i<=x2;i++)//只要在范围内就记录
{
for(int j=y1;j<=y2;j++)
{
num[i][j]++;
}
}
}
for(int i=1;i<=n;i++)//遍历所有的
{
for(int j=1;j<=n;j++)
{
cout<<num[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
总结:
题目不难主要是理解,并搞明白坐标在二维数组中如何运用