Submission #444273

#TimeUsernameProblemLanguageResultExecution timeMemory
444273keta_tsimakuridzeICC (CEOI16_icc)C++14
Compilation error
0 ms0 KiB
#include "icc.h" #include<bits/stdc++.h> #define f first #define s second #define int long long using namespace std; const int N=2e5+5,mod=1e9+7; int comp[N],fix[N],X,idx,n; vector<pair<int,int> > edges; vector<int> a,x,y,V[N]; bool query(int n,int m,vector<int> x,vector<int> y) { int f = 0; for(int i = 0; i<x.size(); i++) { if(x[i] == edges[X].f) f++; if(x[i] == edges[X].s) f++; } if(f>1) return 0; f = 0; for(int i = 0; i<y.size(); i++) { if(y[i] == edges[X].f) f++; if(y[i] == edges[X].s) f++; } if(f>1) return 0; return 1; } int solve(){ int l = 0, r = n-1, u; while(l<=r) { int mid = (l+r)/2; vector<int> x,y; for(int i = 0; i<=mid; i++) { x.push_back(a[i]); } for(int i = mid+1; i<n; i++) { if(comp[a[i]] != comp[a[mid]]) y.push_back(a[i]); } if(!y.size()) { r = mid - 1; continue; } bool f = query(x.size(),y.size(),x,y); if(f) { r = mid - 1; u = a[mid]; } else { l = mid + 1; } } return u; } void dfs(int u,int cur) { idx++; a.push_back(u); comp[u] = cur; fix[u] = 1; for(int i=0;i<V[u].size();i++) { if(!fix[V[u][i]]) dfs(V[u][i],cur); } } void run(int m){ n = m; int lft = n - 1; X = -1; while(lft--){ X++; for(int i=1;i<=n;i++) fix[i] = 0; int cur = 0; a.clear(); idx = 0; for(int i=1;i<=n;i++) { if(!fix[i]) { dfs(i,++cur); } } int l = 1, r = n-1,u = 0,v = 0; u = solve(); reverse(a.begin(),a.end()); v = solve(); V[u].push_back(v); V[v].push_back(u); setRoad(u,v); } }

Compilation message (stderr)

icc.cpp: In function 'bool query(long long int, long long int, std::vector<long long int>, std::vector<long long int>)':
icc.cpp:13:18: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   13 |  for(int i = 0; i<x.size(); i++) {
      |                 ~^~~~~~~~~
icc.cpp:19:18: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   19 |  for(int i = 0; i<y.size(); i++) {
      |                 ~^~~~~~~~~
icc.cpp: In function 'void dfs(long long int, long long int)':
icc.cpp:58:15: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   58 |  for(int i=0;i<V[u].size();i++) {
      |              ~^~~~~~~~~~~~
icc.cpp: In function 'void run(long long int)':
icc.cpp:77:7: warning: unused variable 'l' [-Wunused-variable]
   77 |   int l = 1, r = n-1,u = 0,v = 0;
      |       ^
icc.cpp:77:14: warning: unused variable 'r' [-Wunused-variable]
   77 |   int l = 1, r = n-1,u = 0,v = 0;
      |              ^
icc.cpp: In function 'long long int solve()':
icc.cpp:50:9: warning: 'u' may be used uninitialized in this function [-Wmaybe-uninitialized]
   50 |  return u;
      |         ^
/usr/bin/ld: /tmp/ccSfuOhC.o: in function `main':
grader.cpp:(.text.startup+0x17): undefined reference to `run'
collect2: error: ld returned 1 exit status