Submission #642315

# Submission time Handle Problem Language Result Execution time Memory
642315 2022-09-19T08:28:01 Z dozer Joker (BOI20_joker) C++14
25 / 100
77 ms 5492 KB
#include <bits/stdc++.h>
using namespace std;
#define fileio() freopen("input.txt", "r", stdin), freopen("output.txt", "w", stdout)
#define fastio() cin.tie(0), ios_base::sync_with_stdio(0)
#define sp " "
#define endl "\n"
#define pb push_back
#define pii pair<int, int>
#define st first
#define nd second
#define N 200005
 
const int modulo = 1e9 + 7;
int ans[N], u[N], v[N], l[N], r[N];
 
int find(vector<int> &root, int node)
{
	if (node < 0) return -(find(root, -node));
	if (node == root[node]) return node;
	return root[node] = find(root, root[node]);
}
 
 
int32_t main()
{
	fastio();
 

	int n, m, q;
	cin>>n>>m>>q;
	vector<int> root(n + 5, 0);
	for (int i = 1; i <= n; i++)
		root[i] = i;
 
	for (int i = 1; i <= m; i++)
	{
		cin>>u[i]>>v[i];
	}
 
	for (int i = m; i >= 1; i--)
	{
		if (ans[i] == 1) 
		{
			ans[i - 1] = 1;
			continue;
		}
		int a = find(root, u[i]), b = find(root, v[i]);
		if (a == b) ans[i - 1] = 1;
		else
		{
			if (a < 0) a *= -1, b *= -1;
			root[a] = -b;
		}
	}
 
	for (int i = 1; i <= q; i++)
	{
		cin>>l[i]>>r[i];
		if (ans[r[i]] == 1) cout<<"YES\n";
		else cout<<"NO\n";
	}
	cerr<<"time taken : "<<(float)clock() / CLOCKS_PER_SEC<<" seconds\n";
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Incorrect 0 ms 340 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Incorrect 0 ms 340 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Correct 61 ms 5240 KB Output is correct
4 Correct 59 ms 5068 KB Output is correct
5 Correct 77 ms 5492 KB Output is correct
6 Correct 67 ms 4964 KB Output is correct
7 Correct 57 ms 4776 KB Output is correct
8 Correct 61 ms 4828 KB Output is correct
9 Correct 59 ms 4980 KB Output is correct
10 Correct 59 ms 5392 KB Output is correct
11 Correct 69 ms 5016 KB Output is correct
12 Correct 72 ms 5404 KB Output is correct
13 Correct 61 ms 4484 KB Output is correct
14 Correct 62 ms 4684 KB Output is correct
15 Correct 77 ms 5008 KB Output is correct
16 Correct 65 ms 5248 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Incorrect 0 ms 340 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Incorrect 0 ms 340 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Incorrect 0 ms 340 KB Output isn't correct
4 Halted 0 ms 0 KB -