Submission #429946

#TimeUsernameProblemLanguageResultExecution timeMemory
429946JasiekstrzVision Program (IOI19_vision)C++17
Compilation error
0 ms0 KiB
#include<bits/stdc++.h> #include "vision.h" using namespace std; const int X=200; int h,w; vector<int> primes; bool composite[X+10]; int row[X+10]; // id of rows xor int col[X+10]; // id of columns xor vector<int> row_p[2]; vector<int> col_p[2]; int row_e[X+10]; int col_e[X+10]; int co(int x,int y) { return (x-1)*w+y-1; } void construct_network(int H,int W,int K) { vector<int> tmp; h=H;w=W; int it=h*w; int n=max(h,w); for(int i=2;i<=n;i++) { if(composite[i]) continue; for(int j=i;j<=n;j*=i) primes.push_back(j); for(int j=2*i;j<=n;j+=i) composite[j]=true; }   // rows for(int i=1;i<=h;i++) { row[i]=it++; tmp.clear(); for(int j=1;j<=w;j++) tmp.push_back(co(i,j)); add_xor(tmp); }   // columns for(int j=1;j<=w;j++) { col[j]=it++; tmp.clear(); for(int i=1;i<=h;i++) tmp.push_back(co(i,j)); add_xor(tmp); }   // rows divisors for(auto p:primes) { if(p>h) break; vector<int> modt(p); for(int i=1;i<=p;i++) { if(i+p>h) modt[i-1]=row[i]; else { modt[i-1]=it++; tmp.clear(); for(int j=i;j<=h;j+=p) tmp.push_back(row[j]); add_xor(tmp); } } row_p[0].push_back(it++); add_or(modt); row_p[1].push_back(it++); add_not(row_p[0].back()); //cerr<<"row_p "<<p<<" {"<<row_p[1].back()<<","<<row_p[0].back()<<"}\n"; }   // columns divisors for(auto p:primes) { if(p>w) break; vector<int> modt(p); for(int i=1;i<=p;i++) { if(i+p>w) modt[i-1]=col[i]; else { modt[i-1]=it++; tmp.clear(); for(int j=i;j<=w;j+=p) tmp.push_back(col[j]); add_xor(tmp); } } col_p[0].push_back(it++); add_or(modt); col_p[1].push_back(it++); add_not(col_p[0].back()); //cerr<<"col_p "<<p<<" {"<<col_p[1].back()<<","<<col_p[0].back()<<"}\n"; }   // rows equal if(h==1) { row_e[0]=it++; add_not(row[1]); } else { for(int i=0;i<h;i++) { row_e[i]=it++; tmp.clear(); for(size_t j=0;j<row_p[1].size();j++) tmp.push_back(row_p[i%primes[j]==0][j]); add_and(tmp); //cerr<<"row_e "<<i<<" "<<row_e[i]<<"\n"; } }   // columns equal if(w==1) { col_e[0]=it++; add_not(col[1]); } else { for(int i=0;i<w;i++) { col_e[i]=it++; tmp.clear(); for(size_t j=0;j<col_p[1].size();j++) tmp.push_back(col_p[i%primes[j]==0][j]); add_and(tmp); //cerr<<"col_e "<<i<<" "<<col_e[i]<<"\n"; } }   // answer vector<int> ans; for(int r=0;r<=min(K,h-1);r++) { int c=K-r; if(c>w-1) continue; ans.push_back(it++); tmp={row_e[r],col_e[c]}; add_and(tmp); } add_or(ans); return; }

Compilation message (stderr)

vision.cpp:63:1: error: extended character   is not valid in an identifier
   63 |  
      | ^
vision.cpp:83:1: error: extended character   is not valid in an identifier
   83 |  
      | ^
vision.cpp:103:1: error: extended character   is not valid in an identifier
  103 |  
      | ^
vision.cpp:155:1: error: extended character   is not valid in an identifier
  155 |  
      | ^
vision.cpp:207:1: error: extended character   is not valid in an identifier
  207 |  
      | ^
vision.cpp:245:1: error: extended character   is not valid in an identifier
  245 |  
      | ^
vision.cpp:283:1: error: extended character   is not valid in an identifier
  283 |  
      | ^
vision.cpp: In function 'void construct_network(int, int, int)':
vision.cpp:63:1: error: '\U000000a0' was not declared in this scope
   63 |  
      | ^
vision.cpp:67:14: error: 'i' was not declared in this scope
   67 |  for(int i=1;i<=h;i++)
      |              ^
vision.cpp:83:3: error: expected ';' before 'for'
   83 |  
      |  ^
      |  ;
......
   87 |  for(int j=1;j<=w;j++)
      |  ~~~
vision.cpp:87:14: error: 'j' was not declared in this scope
   87 |  for(int j=1;j<=w;j++)
      |              ^
vision.cpp:103:3: error: expected ';' before 'for'
  103 |  
      |  ^
      |  ;
......
  107 |  for(auto p:primes)
      |  ~~~
vision.cpp:155:3: error: expected ';' before 'for'
  155 |  
      |  ^
      |  ;
......
  159 |  for(auto p:primes)
      |  ~~~
vision.cpp:207:3: error: expected ';' before 'if'
  207 |  
      |  ^
      |  ;
......
  211 |  if(h==1)
      |  ~~
vision.cpp:221:2: error: 'else' without a previous 'if'
  221 |  else
      |  ^~~~
vision.cpp:245:3: error: expected ';' before 'if'
  245 |  
      |  ^
      |  ;
......
  249 |  if(w==1)
      |  ~~
vision.cpp:259:2: error: 'else' without a previous 'if'
  259 |  else
      |  ^~~~
vision.cpp:283:3: error: expected ';' before 'vector'
  283 |  
      |  ^
      |  ;
......
  287 |  vector<int> ans;
      |  ~~~~~~
vision.cpp:299:3: error: 'ans' was not declared in this scope; did you mean 'abs'?
  299 |   ans.push_back(it++);
      |   ^~~
      |   abs
vision.cpp:307:9: error: 'ans' was not declared in this scope; did you mean 'abs'?
  307 |  add_or(ans);
      |         ^~~
      |         abs