Submission #34010405
Source Code Expand
#include<bits/stdc++.h>
#define int long long
#define rep(i,n) for(int (i)=1;(i)<=n;++(i))
#define repe(i,l,r) for(int (i)=l;(i)<=r;++(i))
#define FOR(i,r,l) for(int (i)=r;(i)>=l;--(i))
#define INF 0x3f3f3f
#define ls p<<1
#define rs p<<1|1
using namespace std;
int read(){int sum=0,f=1;char c;c=getchar();while(c<'0'||c>'9'){if(c=='-')f=-1;c=getchar();}while(c>='0'&&c<='9'){sum=(sum<<1)+(sum<<3)+(c-'0');c=getchar();}return sum*f;}
void out(int x){if(x<0){putchar('-');x=-x;}if(x>=10)out(x/10);putchar(x%10+'0');}
struct Edge{
int u,v;
}e[500005];
int q[500005],fa[500005],sz[500005];
bool vis[500005],ge[500005];
int n,m,E,Q;
int getfa(int x){
if(x!=fa[x]){
fa[x]=getfa(fa[x]);
}
return fa[x];
}
int ans;
void update(int x,int y){
int fx=getfa(x),fy=getfa(y);
if(fx==fy)return;
fa[fy]=fx;
if(vis[fx]==1||vis[fy]==1){
if(vis[fx]==0)ans+=sz[fx];
if(vis[fy]==0)ans+=sz[fy];
}
sz[fx]+=sz[fy];
vis[fx]|=vis[fy];
}
int res[500005];
signed main(){
n=read(),m=read(),E=read();
rep(i,E){
e[i].u=read(),e[i].v=read();
}
repe(i,n+1,n+m)vis[i]=1;
rep(i,n+m)fa[i]=i;
rep(i,n)sz[i]=1;
Q=read();
rep(i,Q){
q[i]=read();
ge[q[i]]=1;
}
rep(i,E){
if(!ge[i]){
update(e[i].u,e[i].v);
}
}
FOR(i,Q,1){
res[i]=ans;
update(e[q[i]].u,e[q[i]].v);
}
rep(i,Q)printf("%lld\n",res[i]);
return 0;
}
Submission Info
| Submission Time |
|
| Task |
E - Blackout 2 |
| User |
ktq_cpp |
| Language |
C++ (GCC 9.2.1) |
| Score |
500 |
| Code Size |
1378 Byte |
| Status |
AC |
| Exec Time |
102 ms |
| Memory |
19772 KiB |
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:3:26: warning: unnecessary parentheses in declaration of ‘i’ [-Wparentheses]
3 | #define rep(i,n) for(int (i)=1;(i)<=n;++(i))
| ^
./Main.cpp:39:2: note: in expansion of macro ‘rep’
39 | rep(i,E){
| ^~~
./Main.cpp:4:29: warning: unnecessary parentheses in declaration of ‘i’ [-Wparentheses]
4 | #define repe(i,l,r) for(int (i)=l;(i)<=r;++(i))
| ^
./Main.cpp:42:2: note: in expansion of macro ‘repe’
42 | repe(i,n+1,n+m)vis[i]=1;
| ^~~~
./Main.cpp:3:26: warning: unnecessary parentheses in declaration of ‘i’ [-Wparentheses]
3 | #define rep(i,n) for(int (i)=1;(i)<=n;++(i))
| ^
./Main.cpp:43:2: note: in expansion of macro ‘rep’
43 | rep(i,n+m)fa[i]=i;
| ^~~
./Main.cpp:3:26: warning: unnecessary parentheses in declaration of ‘i’ [-Wparentheses]
3 | #define rep(i,n) for(int (i)=1;(i)<=n;++(i))
| ^
./Main.cpp:44:2: note: in expansion of macro ‘rep’
44 | rep(i,n)sz[i]=1;
| ^~~
./Main.cpp:3:26: warning: unnecessary parentheses in declaration of ‘i’ [-Wparentheses]
3 | #define rep(i,n) for(int (i)=1;(i)<=n;++(i))
| ^
./Main.cpp:46:2: note: in expansion of macro ‘rep’
46 | rep(i,Q){
| ^~~
./Main.cpp:3:26: warning: unnecessary parentheses in declaration of ‘i’ [-Wparentheses]
3 | #define rep(i,n) for(int (i)=1;(i)<=n;++(i))
| ^
./Main.cpp:50:2: note: in expansion of macro ‘rep’
50 | rep(i,E){
| ^~~
./Main.cpp:5:28: warning: unnecessary parentheses in declaration of ‘i’ [-Wparentheses]
5 | #define FOR(i,r,l) for(int (i)=r;(i)>=l;--(i))
| ^
./Main.cpp:55:2: note: in expansion of macro ‘FOR’
55 | FOR(i,Q,1){
| ^~~
./Main.cpp:3:26: warning: unnecessary parentheses in declaration of ‘i’ [-Wparentheses]
...
Judge Result
| Set Name |
Sample |
All |
| Score / Max Score |
0 / 0 |
500 / 500 |
| Status |
|
|
| Set Name |
Test Cases |
| Sample |
sample_01.txt |
| All |
sample_01.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt |
| Case Name |
Status |
Exec Time |
Memory |
| sample_01.txt |
AC |
7 ms |
3668 KiB |
| test_01.txt |
AC |
69 ms |
13896 KiB |
| test_02.txt |
AC |
48 ms |
11832 KiB |
| test_03.txt |
AC |
78 ms |
18980 KiB |
| test_04.txt |
AC |
41 ms |
11688 KiB |
| test_05.txt |
AC |
12 ms |
7804 KiB |
| test_06.txt |
AC |
24 ms |
8188 KiB |
| test_07.txt |
AC |
36 ms |
10432 KiB |
| test_08.txt |
AC |
66 ms |
16612 KiB |
| test_09.txt |
AC |
46 ms |
12508 KiB |
| test_10.txt |
AC |
57 ms |
12892 KiB |
| test_11.txt |
AC |
66 ms |
16344 KiB |
| test_12.txt |
AC |
33 ms |
10412 KiB |
| test_13.txt |
AC |
55 ms |
15292 KiB |
| test_14.txt |
AC |
43 ms |
12364 KiB |
| test_15.txt |
AC |
16 ms |
8172 KiB |
| test_16.txt |
AC |
22 ms |
8944 KiB |
| test_17.txt |
AC |
42 ms |
11072 KiB |
| test_18.txt |
AC |
83 ms |
19364 KiB |
| test_19.txt |
AC |
50 ms |
13208 KiB |
| test_20.txt |
AC |
48 ms |
12400 KiB |
| test_21.txt |
AC |
90 ms |
16924 KiB |
| test_22.txt |
AC |
56 ms |
13360 KiB |
| test_23.txt |
AC |
87 ms |
19772 KiB |
| test_24.txt |
AC |
52 ms |
13520 KiB |
| test_25.txt |
AC |
80 ms |
16196 KiB |
| test_26.txt |
AC |
47 ms |
11460 KiB |
| test_27.txt |
AC |
55 ms |
13428 KiB |
| test_28.txt |
AC |
85 ms |
19580 KiB |
| test_29.txt |
AC |
55 ms |
13428 KiB |
| test_30.txt |
AC |
52 ms |
13148 KiB |
| test_31.txt |
AC |
73 ms |
16948 KiB |
| test_32.txt |
AC |
54 ms |
13344 KiB |
| test_33.txt |
AC |
84 ms |
19636 KiB |
| test_34.txt |
AC |
50 ms |
13360 KiB |
| test_35.txt |
AC |
102 ms |
19340 KiB |
| test_36.txt |
AC |
90 ms |
17384 KiB |
| test_37.txt |
AC |
56 ms |
13296 KiB |
| test_38.txt |
AC |
84 ms |
19696 KiB |
| test_39.txt |
AC |
50 ms |
13576 KiB |
| test_40.txt |
AC |
85 ms |
16968 KiB |