Submission #798185

#TimeUsernameProblemLanguageResultExecution timeMemory
798185QwertyPi게임 (IOI14_game)C++14
Compilation error
0 ms0 KiB
#include "game.h"

struct DSU{
	int n, dsu[1511], a[1511][1511];
	void init(int n){
		DSU::n = n;
		for(int i = 0; i < n; i++){
			dsu[i] = i;
		}
		for(int i = 0; i < n; i++){
			for(int j = 0; j < n; j++){
				if(i != j) a[i][j] = 1;
			}
		}
	}
	int f(int x){
		return x == dsu[x] ? x : dsu[x] = f(dsu[x]);
	}
	bool g(int x, int y){
		x = f(x), y = f(y);
		if(x == y) return false;
		if(a[x][y] > 1) {
			a[x][y]--; return false;
		}else{
			dsu[x] = y;
			for(int i = 0; i < n; i++){
				if(dsu.f(i) == i && dsu.f(i) != y){
					a[i][y] += a[i][x];
					a[y][i] += a[x][i];
				}
			}
		}
		return true;
	}
} dsu;
void initialize(int n) {
	dsu.init(n);
}

int hasEdge(int u, int v) {
    return dsu.g(u, v);
}

Compilation message (stderr)

game.cpp: In member function 'bool DSU::g(int, int)':
game.cpp:27:12: error: request for member 'f' in '((DSU*)this)->DSU::dsu', which is of non-class type 'int [1511]'
   27 |     if(dsu.f(i) == i && dsu.f(i) != y){
      |            ^
game.cpp:27:29: error: request for member 'f' in '((DSU*)this)->DSU::dsu', which is of non-class type 'int [1511]'
   27 |     if(dsu.f(i) == i && dsu.f(i) != y){
      |                             ^