제출 #164460

#제출 시각아이디문제언어결과실행 시간메모리
164460Runtime_error_Vision Program (IOI19_vision)C++14
100 / 100
68 ms5952 KiB


#include "vision.h"
using namespace std;
const int inf = 1e3+9;

int solve(int n, int m, int K){

    vector<int> Right_Diagonals[inf];//i-j it's shape is //
	vector<int> Left_Diagonals[inf];//i+j it's shape is \\

	for(int i=0; i<n; i++){
		for(int j=0; j<m; j++){
			Left_Diagonals[i+j].push_back(i*m+j);
			Right_Diagonals[i+m-1-j].push_back(i*m+j);
		}
	}
	vector<int> Left_Diagonals_Or, Right_Diagonals_Or, Left_Diagonals_Prefix_Or, Right_Diagonals_Prefix_Or;
	vector<int> GetAns;

	for(int i=0; i<=n+m-2; i++){
		Left_Diagonals_Or.push_back( add_or( Left_Diagonals[i] ) );
		Right_Diagonals_Or.push_back (add_or( Right_Diagonals[i] ) );

		Left_Diagonals_Prefix_Or.push_back( add_or( Left_Diagonals_Or ) );
		Right_Diagonals_Prefix_Or.push_back( add_or( Right_Diagonals_Or ) );

		if(i >= K){
			GetAns.push_back( add_and( { Left_Diagonals_Or[i] , Left_Diagonals_Prefix_Or[i-K] } ) );
			GetAns.push_back( add_and( { Right_Diagonals_Or[i] , Right_Diagonals_Prefix_Or[i-K] } ) );
		}
	}
	return add_or( GetAns );
}

void construct_network(int n, int m, int k) {
	if(n+m-2 == k)
        solve(n, m, k);
	else
        add_xor( {solve(n, m, k), solve(n, m, k + 1) } );

}

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

vision.cpp:10:34: warning: multi-line comment [-Wcomment]
  vector<int> Left_Diagonals[inf];//i+j it's shape is \\
                                  ^
#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...