제출 #166062

#제출 시각아이디문제언어결과실행 시간메모리
166062keta_tsimakuridzeVision Program (IOI19_vision)C++14
컴파일 에러
0 ms0 KiB
#include<bits/stdc++.h> using namespace std; #include "vision.h" vector<int>V; int ans(){ return add_or(V); } void construct_network(int h, int w, int K){ vector<int> Dr[405],Dl[405],cur,p,b,a; int diag[405],dia[450],k; for(int i=0;i<w;i++) for(int j=0;j<h;j++){ Dr[i-j+h-1].push_back(i*w+j); Dl[i+j].push_back(i*w+j); } for(int i=w+h-1;i>=0;i--){ cur.clear(); cur.push_back(add_or(Dr[i])); p.clear(); p.push_back(diag[i+1]); diag[i]=add_and({add_or(cur),add_or(p)}); if(i+k<=w+h-1){ p.clear(); p.push_back(diag[i+k]); a.push_back(add_and({diag[i+k],add_or(cur)})); } if(i+k<=w+h-2){ p.clear(); p.push_back(diag[i+k+1]); b.push_back(add_and(p,add_and(cur))); } V.push_back(add_xor({b,a})); } for(int i=0;i<=w+h-1;i++){ cur.clear(); cur.push_back(add_or(Dl[i])); p.clear(); p.push_back(dia[i+1]); dia[i]=add_and({add_or(cur),add_or(p)}); if(i-k>=0){ p.clear(); p.push_back(dia[i-k]); a.push_back(add_and({diag[i-k],add_or(cur)})); } if(i-k>=1){ p.clear(); p.push_back(diag[i-k-1]); b.push_back(add_and({p,add_and(cur)})); } V.push_back(add_xor({b,a})); } ans(); }

컴파일 시 표준 에러 (stderr) 메시지

vision.cpp: In function 'void construct_network(int, int, int)':
vision.cpp:36:37: error: too many arguments to function 'int add_and(std::vector<int>)'
   b.push_back(add_and(p,add_and(cur)));
                                     ^
In file included from vision.cpp:4:0:
vision.h:10:5: note: declared here
 int add_and(std::vector<int> Ns);
     ^~~~~~~
vision.cpp:38:28: error: could not convert '{b, a}' from '<brace-enclosed initializer list>' to 'std::vector<int>'
   V.push_back(add_xor({b,a}));
                            ^
vision.cpp:59:39: error: could not convert '{p, add_and(std::vector<int>(cur))}' from '<brace-enclosed initializer list>' to 'std::vector<int>'
   b.push_back(add_and({p,add_and(cur)}));
                                       ^
vision.cpp:61:28: error: could not convert '{b, a}' from '<brace-enclosed initializer list>' to 'std::vector<int>'
   V.push_back(add_xor({b,a}));
                            ^