1 条题解
-
3
差分的板子级别题目,但是要将 表示为 ~ 这个单位是否被覆盖,这是这个题唯一需要考虑一下的点
#include<bits/stdc++.h> using namespace std; int a[100010]; int main(){ int n,maxx=-1,ans=0; cin>>n; for(int i=1;i<=n;i++){ int x1,y1,x2,y2; cin>>x1>>y1>>x2>>y2; a[x1]++,a[x2]--;//这里是因为x2~x2+1这个单位没被覆盖,所以和原版不同 maxx=max(maxx,max(x1,x2)); } for(int i=1;i<=maxx;i++) a[i]+=a[i-1]; for(int i=1;i<=maxx;i++) if(a[i]!=0) ans++; cout<<ans; }
- 1
信息
- ID
- 757
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 8
- 标签
- 递交数
- 90
- 已通过
- 16
- 上传者