Submission #788354

#TimeUsernameProblemLanguageResultExecution timeMemory
788354mindiyakGame (IOI14_game)C++14
0 / 100
1 ms340 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; asked[i].insert(i); } N = n; } int hasEdge(int u, int v) { if(u==v){ return 1; } if(asked[u].size()<asked[v].size()){ swap(u,v); } // cout << "u size " << asked[u].size() << " " << u << " " << v << " " << find_parent(u) << endl; if(find_parent(u) == v) return 1; if(find_parent(v) == u) return 1; if(asked[u].size() == N-1){ 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:39:24: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   39 |     if(asked[u].size() == N-1){
      |        ~~~~~~~~~~~~~~~~^~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...