Submission #2044922


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

int n,m,k,a[100009],b[100009],c1[100009],c2[100009],c3[100009],ans[100009];bool used[100009];

class UnionFind{
	public:
	vector<int>par;
	void init(int size_){
		par.resize(size_+2,-1);
	}
	int root(int pos){
		if(par[pos]==-1) return pos;
		par[pos]=root(par[pos]);
		return par[pos];
	}
	bool same(int u,int v){
		if(root(u)==root(v)) return true;
		return false;
	}
	void unite(int u,int v){
		u=root(u);v=root(v);
		if(u==v) return;
		par[u]=v;
	}
};

int main(){
	cin>>n>>m>>k;
	for(int i=1;i<=m;i++) cin>>a[i]>>b[i];
	for(int i=1;i<=k;i++){
		cin>>c1[i];
		if(c1[i]==1) cin>>c2[i]>>c3[i];
		else{cin>>c2[i];used[c2[i]]=true;}
	}
	UnionFind UF;UF.init(n+2);
	for(int i=1;i<=m;i++){
		if(used[i]==false) {
			UF.unite(a[i],b[i]);
		}
	}
	for(int i=k;i>=1;i--){
		if(c1[i]==1){
			if(UF.same(c2[i],c3[i])==true) ans[i]=1;
		}
		else{
			UF.unite(a[c2[i]],b[c2[i]]);
		}
	}
	for(int i=1;i<=k;i++){
		if(c1[i]==0) continue;
		if(ans[i]==1) cout<<"YES"<<endl;
		else cout<<"NO"<<endl;
	}
	return 0;
}

Submission Info

Submission Time
Task D - Graph Destruction
User E869120
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1105 Byte
Status AC
Exec Time 247 ms
Memory 3200 KB

Judge Result

Set Name All
Score / Max Score 100 / 100
Status
AC × 37
Set Name Test Cases
All 1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 3, 30, 31, 32, 33, 34, 35, 36, 4, 5, 50, 6, 7, 8, 9
Case Name Status Exec Time Memory
1 AC 1 ms 256 KB
10 AC 5 ms 256 KB
11 AC 23 ms 512 KB
12 AC 68 ms 1024 KB
13 AC 128 ms 1792 KB
14 AC 200 ms 2048 KB
15 AC 221 ms 2688 KB
16 AC 247 ms 3200 KB
17 AC 69 ms 1152 KB
18 AC 63 ms 1024 KB
19 AC 84 ms 1280 KB
2 AC 1 ms 256 KB
20 AC 119 ms 1664 KB
21 AC 84 ms 1280 KB
22 AC 117 ms 1664 KB
23 AC 84 ms 1280 KB
24 AC 54 ms 896 KB
25 AC 64 ms 1024 KB
26 AC 180 ms 2560 KB
27 AC 53 ms 896 KB
28 AC 59 ms 1024 KB
29 AC 137 ms 1920 KB
3 AC 1 ms 256 KB
30 AC 100 ms 1536 KB
31 AC 171 ms 2432 KB
32 AC 135 ms 1920 KB
33 AC 150 ms 2048 KB
34 AC 183 ms 2560 KB
35 AC 163 ms 2304 KB
36 AC 73 ms 1152 KB
4 AC 1 ms 256 KB
5 AC 1 ms 256 KB
50 AC 171 ms 2432 KB
6 AC 2 ms 256 KB
7 AC 2 ms 256 KB
8 AC 3 ms 256 KB
9 AC 4 ms 256 KB