IT评测·应用市场-qidao123.com
标题:
set的用法
[打印本页]
作者:
金歌
时间:
2024-9-10 04:07
标题:
set的用法
[ABC370D] Cross Explosion - 洛谷
#include "bits/stdc++.h"
#define int long long
using namespace std;
const int N=1000000;
set <int> h[N], w[N];
signed main () {
ios::sync_with_stdio (false);
cin.tie (0); cout.tie (0);
int n,m,q;
cin >> n >> m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
h[i].insert(j),w[j].insert(i);
cin>>q;
while(q--)
{
int x,y;
cin>>x>>y;
if(h[x].find(y)!=h[x].end())
{
h[x].erase(y);
w[y].erase(x);
}
else
{
auto i=h[x].lower_bound(y);
vector<int>v;
if(i!=h[x].end()) v.push_back(*i);
if(i!=h[x].begin()) v.push_back(*(--i));
for(auto j:v)
h[x].erase(j),w[j].erase(x);
v.clear();
i=w[y].lower_bound(x);
if(i!=w[y].end())
v.push_back(*i);
if(i!=w[y].begin())
v.push_back(*(--i));
for(auto j:v)
w[y].erase(j),h[j].erase(y);
}
}
int ans=0;
for(int i=1;i<=n;i++)
ans+=h[i].size();
cout<<ans;
return 0;
}
//for(auto it=s.begin();it!=s.end();it++)
//cout<<*it;//
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/)
Powered by Discuz! X3.4