Submission #788339

#TimeUsernameProblemLanguageResultExecution timeMemory
788339mindiyakGame (IOI14_game)C++14
0 / 100
1 ms396 KiB
#include "game.h" #include <iostream> #include <vector> #include <set> using namespace std; int N; vector<int> parents(1502); vector<int> connected(1502,0); vector<set<int>> asked(1502,set<int>()); int find_parent(int pos){ if(parents[pos] == pos){ return pos; }return find_parent(parents[pos]); } void initialize(int n) { for(int i=0;i<n;i++){ parents[i] = i; } N = n; } int hasEdge(int u, int v) { if(u==v){ return 1; } if(find_parent(u) == find_parent(v)){ return 1; } if(asked[u].size()<asked[v].size()){ swap(u,v); } if(asked[u].size() == N-2){ parents[u] = v; asked[u].insert(v); asked[v].insert(u); return 1; } asked[u].insert(v); asked[v].insert(u); return 0; }

Compilation message (stderr)

game.cpp: In function 'int hasEdge(int, int)':
game.cpp:36:24: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   36 |     if(asked[u].size() == N-2){
      |        ~~~~~~~~~~~~~~~~^~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...