10分……绷不住了……

P2692 覆盖

更新后代码 ``` #include<iostream> using namespace std; int main() { int n,m,b,g,ans=0; int x1[10000],x2[10000],y1[10000],y2[10000]; cin>>n>>m>>b>>g; bool a[n+10][m+10]={0}; for(int i=1;i<=b;i++){ cin>>x1[i]>>x2[i]; } for(int i=1;i<=g;i++){ cin>>y1[i]>>y2[i]; } for(int j=1;j<=b;j++){ for(int k=1;k<=n;k++){ for(int i=1;i<=m;i++){ if(k>=x1[j]&&k<=x2[j]) a[k][i]=1; } } } for(int j=1;j<=g;j++){ for(int k=1;k<=n;k++){ for(int i=1;i<=m;i++){ if(i>=y1[j]&&i<=y2[j]) a[k][i]=1; } } } for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ ans=ans+a[i][j]; } } cout<<ans; return 0; } ``` 但是还是有两个超时了……
by feng_nuoyiman @ 2022-04-22 22:42:17


时间复杂度假的吧,$O(nm(b+g))$ 过不去,需要优化
by Loser_King @ 2022-04-22 22:52:44


第九个测试点……16006个数据…… c++直接开摆了……都不给算了……
by feng_nuoyiman @ 2022-04-22 23:00:00


**Hint**:考虑离散化?
by Luban @ 2022-04-22 23:03:45


@[Loser_King](/user/159686) 大佬……能帮我优化优化吗……![](https://啧.tk/kel)![](https://啧.tk/kel)![](https://啧.tk/kel)
by feng_nuoyiman @ 2022-04-22 23:04:00


@[Light_Of_Wisdom](/user/113600) 初学c++一个月……离散化是啥……![](https://啧.tk/dk)![](https://啧.tk/dk)
by feng_nuoyiman @ 2022-04-22 23:07:21


@[feng_nuoyiman](/user/702449) 考虑到你不需要记录下每一格,只需要记录行列状态就好了
by Loser_King @ 2022-04-22 23:09:31


|