Submission #414602

#TimeUsernameProblemLanguageResultExecution timeMemory
414602ollelVision Program (IOI19_vision)C++14
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> #include <iostream> #include "vision.h" using namespace std; #define rep(i,a,b) for(int i = a; i < b; i++) #define pb push_back typedef long long ll; typedef vector<int> vi; typedef vector<vi> vvi; typedef pair<int,int> pii; int h, w, k, inst; // bool add_or(vi& q) { // cout << "or:\n"; // for(auto &i : q) cout << i << " ";cout<<endl; // bool ans; cin >> ans; // return ans; // } // // bool add_not(int x ) { // cout << "not:\n"; // cout << x << endl; // bool ans; cin >> ans; return ans; // } // // bool add_and(vi& q) { // cout << "and:\n"; // for(auto &i : q) cout << i << " ";cout<<endl; // bool ans; cin >> ans; // return ans; // } kone() { vi R; rep(i, 0, h) { vi indices; rep(j, 0, w) indices.pb(j + i*w); R.pb(add_or(indices)); } vi C; rep(j, 0, w) { vi indices; rep(i, 0, h) indices.pb(j + i*w); C.pb(add_or(indices)); } vi adjc; rep(i, 0, w - 1) { adjc.pb(add_and(C[i], C[i + 1])); } vi adjr; rep(i, 0, h - 1) { adjr.pb(add_and(R[i], R[i + 1])); } vi pos; pos.pb(add_and(add_xor(R), add_or(adjc))); pos.pb(add_and(add_xor(C), add_or(adjr))); add_or(pos); } void construct_network(int H, int W, int K) { h = H; w = W; k = K; inst = h * w; if (k == 1) kone(); int fi = inst; rep(x, 0, w) rep(y, 0, h) { vi ask = {x+y*w}; rep(x2, 0, w) rep(y2, 0, h) { if (abs(x2 - x) + abs(y2 - y) == k) { vi ask = {x+y*w, x2+y2*w}; inst = add_and(ask); } } } vi ask; rep(i,fi,inst+1) ask.pb(i); add_or(ask); } // int main() { // int H ,W, K; cin >> H>>W>>K;construct_network(H, W, K); // }

Compilation message (stderr)

vision.cpp:37:1: error: ISO C++ forbids declaration of 'kone' with no type [-fpermissive]
   37 | kone()
      | ^~~~
vision.cpp: In function 'int kone()':
vision.cpp:55:35: error: could not convert 'C.std::vector<int>::operator[](((std::vector<int>::size_type)i))' from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to 'std::vector<int>'
   55 |     adjc.pb(add_and(C[i], C[i + 1]));
      |                                   ^
      |                                   |
      |                                   __gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type {aka int}
vision.cpp:59:35: error: could not convert 'R.std::vector<int>::operator[](((std::vector<int>::size_type)i))' from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to 'std::vector<int>'
   59 |     adjr.pb(add_and(R[i], R[i + 1]));
      |                                   ^
      |                                   |
      |                                   __gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type {aka int}
vision.cpp:63:25: error: could not convert 'add_xor(std::vector<int>(R))' from 'int' to 'std::vector<int>'
   63 |   pos.pb(add_and(add_xor(R), add_or(adjc)));
      |                  ~~~~~~~^~~
      |                         |
      |                         int
vision.cpp:64:25: error: could not convert 'add_xor(std::vector<int>(C))' from 'int' to 'std::vector<int>'
   64 |   pos.pb(add_and(add_xor(C), add_or(adjr)));
      |                  ~~~~~~~^~~
      |                         |
      |                         int
vision.cpp:67:1: warning: no return statement in function returning non-void [-Wreturn-type]
   67 | }
      | ^