Submission #123050

# Submission time Handle Problem Language Result Execution time Memory
123050 2019-06-30T06:16:25 Z mechfrog88 Lightning Rod (NOI18_lightningrod) C++14
7 / 100
2000 ms 262144 KB
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#pragma GCC optimize("unroll-loops,no-stack-protector")
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
 
using namespace __gnu_pbds;
using namespace std;
 
template <typename T>
using ordered_set = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>;
 
typedef long long ll;
typedef long double ld;	


vector <ll> id;

ll find(ll i){
	if (id[i] <= -1) return i;
	return id[i] = find(id[i]); 
}

void unio(ll i,ll j){
	ll a = find(i);
	ll b = find(j);
	if (a == b) return;
	if (id[a] > id[b]) swap(a,b);
	id[a] += id[b];
	id[b] = a;
}

int main(){
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	ll n;
	cin >> n;
	vector <pair<ll,ll>> arr(n);
	id.resize(n,-1);
	for (int z=0;z<n;z++){
		cin >> arr[z].first >> arr[z].second;
	}
	for (int z=0;z<n;z++){
		ll x1 = arr[z].first-arr[z].second;
		ll x2 = arr[z].first+arr[z].second;
		for (int x=0;x<n;x++){
			if (z == x) continue;
			ll x3 = arr[x].first-arr[x].second;
			ll x4 = arr[x].first+arr[x].second;
			if (x1 <= x3 && x4 <= x2){
				unio(z,x);
			}
		}
	}
	ll ans = 0;
	for (int z=0;z<n;z++){
		if (id[z] < 0) ans++;
	}
	cout << ans << endl;
}
# Verdict Execution time Memory Grader output
1 Execution timed out 2029 ms 262144 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 380 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 2 ms 376 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 380 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 2 ms 376 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
8 Incorrect 2 ms 376 KB Output isn't correct
9 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 380 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 2 ms 376 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
8 Incorrect 2 ms 376 KB Output isn't correct
9 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 380 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 2 ms 376 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
8 Incorrect 2 ms 376 KB Output isn't correct
9 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 2043 ms 262144 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 2029 ms 262144 KB Time limit exceeded
2 Halted 0 ms 0 KB -