Submission #920467

#TimeUsernameProblemLanguageResultExecution timeMemory
920467Nika533Game (IOI14_game)C++17
100 / 100
285 ms65728 KiB
#pragma GCC diagnostic warning "-std=c++11" #include <bits/stdc++.h> #include "game.h" #define pb push_back #define f first #define s second #define MOD 1000000007 #define flush fflush(stdout) #define all(x) (x).begin(),(x).end() #define allr(x) (x).rbegin(), (x).rend() using namespace std; const int N=4005; int n,k,m,cnt; int ind[N],sz[N],q[N][N]; vector<int> C[N]; void merge(int a, int b) { int c=(++cnt); sz[c]=sz[a]+sz[b]; C[c].pb(a); C[c].pb(b); for (auto x:C[a]) C[c].pb(x); for (auto x:C[b]) C[c].pb(x); for (auto x:C[c]) ind[x]=c; for (int i=1; i<=2*n; i++) { if (i==a || i==b || i==c) continue; q[c][i]=q[a][i]+q[b][i]; q[i][c]=q[c][i]; } } void initialize(int n1) { n=n1; cnt=n; for (int i=1; i<=n; i++) { ind[i]=i; sz[i]=1; } } int hasEdge(int u, int v) { u++; v++; u=ind[u]; v=ind[v]; q[u][v]++; q[v][u]++; if (sz[u]*sz[v]==q[u][v]) { merge(u,v); return 1; } return 0; }

Compilation message (stderr)

game.cpp:1:32: warning: '-std=c++11' is not an option that controls warnings [-Wpragmas]
    1 | #pragma GCC diagnostic warning "-std=c++11"
      |                                ^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...