제출 #884486

#제출 시각아이디문제언어결과실행 시간메모리
884486JakobZorzVision Program (IOI19_vision)C++14
26 / 100
10 ms1752 KiB
#include"vision.h" #include<iostream> #include<vector> using namespace std; int w,h; int get_cell(int x,int y){ return y*w+x; } int construct_diagonal1(int x,int y){ vector<int>ins; while(x<w&&y<h){ ins.push_back(get_cell(x,y)); x++; y++; } return add_or(ins); } int construct_diagonal2(int x,int y){ vector<int>ins; while(x>=0&&y<h){ ins.push_back(get_cell(x,y)); x--; y++; } return add_or(ins); } vector<int>func1(vector<int>arr1,int k){ vector<int>arr2; for(int i=0;i+k<=(int)arr1.size();i++){ vector<int>vec; for(int j=i;j<i+k;j++){ vec.push_back(arr1[j]); } int gor=add_or(vec); int gxor=add_xor(vec); int gnxor=add_not(gxor); arr2.push_back(add_and({gor,gnxor})); } return arr2; } void construct_network(int H,int W,int k){ w=W; h=H; vector<int>diagonals1; for(int y=h-1;y>0;y--) diagonals1.push_back(construct_diagonal1(0,y)); for(int x=0;x<w;x++) diagonals1.push_back(construct_diagonal1(x,0)); vector<int>diagonals2; for(int x=0;x<w;x++) diagonals2.push_back(construct_diagonal2(x,0)); for(int y=1;y<h;y++) diagonals2.push_back(construct_diagonal2(w-1,y)); vector<int>intervals1,intervals2; vector<int>res; int or1=add_or(func1(diagonals1,k)); int or2=add_or(func1(diagonals2,k)); int or3=add_or(func1(diagonals1,k+1)); int or4=add_or(func1(diagonals2,k+1)); int and1=add_and({or1,or2}); int and2=add_and({or3,or4}); int not1=add_not(and1); add_and({and2,not1}); /*res=func1(diagonals1,k); intervals1.insert(intervals1.end(),res.begin(),res.end()); res=func1(diagonals2,k); intervals1.insert(intervals1.end(),res.begin(),res.end()); res=func1(diagonals1,k-1); intervals2.insert(intervals2.end(),res.begin(),res.end()); res=func1(diagonals2,k-1); intervals2.insert(intervals2.end(),res.begin(),res.end()); int ork=add_or(intervals1); int ork1=add_or(intervals2); int nork1=add_not(ork1); add_and({ork,nork1});*/ }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...