제출 #984479

#제출 시각아이디문제언어결과실행 시간메모리
9844793mara벽 칠하기 (APIO20_paint)C++17
28 / 100
15 ms2512 KiB
#include "paint.h"

#include <bits/stdc++.h>
using namespace std;

const int N=505;

int dp[N]; 

int minimumInstructions(int n, int m, int K, vector<int> v, vector<int> A, vector<vector<int>> a) {
  	for(int i=0;i<=n;i++) dp[i]=1e9;
  	dp[0]=0;
  	for(int i=0;i<=n-m;i++){
  		bool flag=0;
  		for(int ii=0;ii<m;ii++){
  			flag=0; int j=ii;
  			for(int cnt=0;cnt<m;cnt++){
	  			if(!binary_search(a[j].begin(),a[j].end(),v[i+cnt])) flag=1;
	  			if(flag) break;
	  			j++; j%=m;
	  		}
	  		if(!flag) break;
  		}
  		if(!flag){
  			for(int j=1;j<=m;j++) dp[i+j]=min(dp[i]+1,dp[i+j]);
  		}
  	}
  	if(dp[n]>=1e9) return -1;
  	return dp[n];
}
#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...