Submission #67916

# Submission time Handle Problem Language Result Execution time Memory
67916 2018-08-15T14:01:08 Z boook Game (IOI14_game) C++14
42 / 100
1000 ms 5956 KB
/*input

*/
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
using namespace std;
using namespace __gnu_pbds;
#define REP(i,j,k)     for(int i = j ; i < k ; ++i)
#define RREP(i,j,k)    for(int i = j ; i >=k ; --i)
#define A    first
#define B    second
#define mp   make_pair
#define pb   emplace_back
#define PII pair<int , int>
#define MEM(i,j)   memset(i , j , sizeof i)
#define ALL(i)     i.begin() , i.end()
#define DBGG(i,j)     cout << i << " " << j << endl
#define DB4(i,j,k,l)  cout << i << " " << j << " " << k << " " << l << endl
#define IOS cin.tie(0) , cout.sync_with_stdio(0)
// #define endl "\n"
///------------------------------------------------------------
#define MAX 1500
#define INF 0x3f3f3f3f

struct djs{
	int x[MAX] , siz[MAX];
	map<int , int> cc[MAX];
	void init(){ REP(i , 0 , MAX) x[i] = i , siz[i] = 1; }
	int Find(int a){ return a == x[a] ? a : x[a] = Find(x[a]); }
	void Union(int a , int b){
		a = Find(a) , b = Find(b);
		if(a == b) return ;
		// cc[a].insert(cc[b].begin() , cc[b].end());
		for(auto to : cc[b]) cc[a][to.A] += to.B;
		x[b] = a , siz[a] += siz[b];
	}
	int operator[](int a){ return Find(a); }
} ds;

int n;
void initialize(int _n){
	n = _n;
	ds.init();
}
int hasEdge(int a, int b){
	a = ds[a];
	b = ds[b];
	int cnt = 0;
	ds.cc[a][b] ++;
	ds.cc[b][a] ++;
	for(auto to : ds.cc[a]) if(ds[to.A] == b) cnt += to.B;
	if(cnt == ds.siz[a] * ds.siz[b]) return ds.Union(a , b) , 1;
	return 0;
}
// int main(){
// 	initialize(4);
// 	int a , b;
// 	while(cin >> a >> b){
// 		cout << hasEdge(a , b) << endl;
// 	}
// 	return 0;
// }
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 3 ms 484 KB Output is correct
3 Correct 3 ms 536 KB Output is correct
4 Correct 3 ms 536 KB Output is correct
5 Correct 2 ms 536 KB Output is correct
6 Correct 3 ms 544 KB Output is correct
7 Correct 2 ms 672 KB Output is correct
8 Correct 3 ms 672 KB Output is correct
9 Correct 2 ms 672 KB Output is correct
10 Correct 3 ms 672 KB Output is correct
11 Correct 2 ms 672 KB Output is correct
12 Correct 3 ms 672 KB Output is correct
13 Correct 3 ms 672 KB Output is correct
14 Correct 2 ms 672 KB Output is correct
15 Correct 3 ms 672 KB Output is correct
16 Correct 3 ms 672 KB Output is correct
17 Correct 3 ms 672 KB Output is correct
18 Correct 2 ms 672 KB Output is correct
19 Correct 2 ms 672 KB Output is correct
20 Correct 2 ms 672 KB Output is correct
21 Correct 2 ms 672 KB Output is correct
22 Correct 2 ms 672 KB Output is correct
23 Correct 3 ms 672 KB Output is correct
24 Correct 2 ms 672 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 672 KB Output is correct
2 Correct 2 ms 672 KB Output is correct
3 Correct 3 ms 672 KB Output is correct
4 Correct 2 ms 672 KB Output is correct
5 Correct 3 ms 672 KB Output is correct
6 Correct 2 ms 672 KB Output is correct
7 Correct 2 ms 672 KB Output is correct
8 Correct 3 ms 672 KB Output is correct
9 Correct 3 ms 672 KB Output is correct
10 Correct 2 ms 672 KB Output is correct
11 Correct 3 ms 672 KB Output is correct
12 Correct 2 ms 672 KB Output is correct
13 Correct 3 ms 672 KB Output is correct
14 Correct 3 ms 672 KB Output is correct
15 Correct 2 ms 672 KB Output is correct
16 Correct 2 ms 688 KB Output is correct
17 Correct 2 ms 688 KB Output is correct
18 Correct 2 ms 688 KB Output is correct
19 Correct 2 ms 688 KB Output is correct
20 Correct 2 ms 688 KB Output is correct
21 Correct 2 ms 688 KB Output is correct
22 Correct 2 ms 688 KB Output is correct
23 Correct 3 ms 688 KB Output is correct
24 Correct 2 ms 688 KB Output is correct
25 Correct 3 ms 688 KB Output is correct
26 Correct 3 ms 688 KB Output is correct
27 Correct 3 ms 688 KB Output is correct
28 Correct 2 ms 688 KB Output is correct
29 Correct 4 ms 688 KB Output is correct
30 Correct 3 ms 688 KB Output is correct
31 Correct 4 ms 688 KB Output is correct
32 Correct 3 ms 688 KB Output is correct
33 Correct 3 ms 688 KB Output is correct
34 Correct 6 ms 796 KB Output is correct
35 Correct 6 ms 816 KB Output is correct
36 Correct 6 ms 900 KB Output is correct
37 Correct 7 ms 900 KB Output is correct
38 Correct 6 ms 928 KB Output is correct
39 Correct 6 ms 964 KB Output is correct
40 Correct 6 ms 964 KB Output is correct
41 Correct 6 ms 984 KB Output is correct
42 Correct 6 ms 1068 KB Output is correct
43 Correct 9 ms 1148 KB Output is correct
44 Correct 5 ms 1148 KB Output is correct
45 Correct 10 ms 1148 KB Output is correct
46 Correct 8 ms 1212 KB Output is correct
47 Correct 7 ms 1212 KB Output is correct
48 Correct 6 ms 1212 KB Output is correct
49 Correct 8 ms 1212 KB Output is correct
50 Correct 6 ms 1212 KB Output is correct
51 Correct 6 ms 1312 KB Output is correct
52 Correct 6 ms 1312 KB Output is correct
53 Correct 4 ms 1312 KB Output is correct
54 Correct 6 ms 1312 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 1312 KB Output is correct
2 Correct 2 ms 1312 KB Output is correct
3 Correct 3 ms 1312 KB Output is correct
4 Correct 2 ms 1312 KB Output is correct
5 Correct 3 ms 1312 KB Output is correct
6 Correct 3 ms 1312 KB Output is correct
7 Correct 3 ms 1312 KB Output is correct
8 Correct 3 ms 1312 KB Output is correct
9 Correct 3 ms 1312 KB Output is correct
10 Correct 2 ms 1312 KB Output is correct
11 Correct 2 ms 1312 KB Output is correct
12 Correct 2 ms 1312 KB Output is correct
13 Correct 4 ms 1312 KB Output is correct
14 Correct 4 ms 1312 KB Output is correct
15 Correct 3 ms 1312 KB Output is correct
16 Correct 3 ms 1312 KB Output is correct
17 Correct 4 ms 1312 KB Output is correct
18 Correct 2 ms 1312 KB Output is correct
19 Correct 3 ms 1312 KB Output is correct
20 Correct 3 ms 1312 KB Output is correct
21 Correct 3 ms 1312 KB Output is correct
22 Correct 2 ms 1312 KB Output is correct
23 Correct 2 ms 1312 KB Output is correct
24 Correct 3 ms 1312 KB Output is correct
25 Correct 3 ms 1312 KB Output is correct
26 Correct 3 ms 1312 KB Output is correct
27 Correct 4 ms 1312 KB Output is correct
28 Correct 3 ms 1312 KB Output is correct
29 Correct 3 ms 1312 KB Output is correct
30 Correct 3 ms 1312 KB Output is correct
31 Correct 3 ms 1312 KB Output is correct
32 Correct 5 ms 1312 KB Output is correct
33 Correct 3 ms 1312 KB Output is correct
34 Correct 7 ms 1312 KB Output is correct
35 Correct 7 ms 1396 KB Output is correct
36 Correct 6 ms 1396 KB Output is correct
37 Correct 8 ms 1396 KB Output is correct
38 Correct 7 ms 1396 KB Output is correct
39 Correct 6 ms 1472 KB Output is correct
40 Correct 6 ms 1472 KB Output is correct
41 Correct 6 ms 1472 KB Output is correct
42 Correct 6 ms 1532 KB Output is correct
43 Correct 5 ms 1552 KB Output is correct
44 Correct 5 ms 1552 KB Output is correct
45 Correct 6 ms 1596 KB Output is correct
46 Correct 8 ms 1596 KB Output is correct
47 Correct 8 ms 1596 KB Output is correct
48 Correct 6 ms 1628 KB Output is correct
49 Correct 6 ms 1692 KB Output is correct
50 Correct 5 ms 1692 KB Output is correct
51 Correct 5 ms 1692 KB Output is correct
52 Correct 4 ms 1692 KB Output is correct
53 Correct 6 ms 1692 KB Output is correct
54 Correct 5 ms 1712 KB Output is correct
55 Execution timed out 1091 ms 5956 KB Time limit exceeded
56 Halted 0 ms 0 KB -