Submission #1350503

#TimeUsernameProblemLanguageResultExecution timeMemory
1350503aaaaaaaaPainting Walls (APIO20_paint)C++20
0 / 100
0 ms344 KiB
#include <bits/stdc++.h>
#include "paint.h"

using namespace std;

int minimumInstructions(int N, int M, int K, vector<int> C, vector<int> A, vector<vector<int>> B) {
  vector<int> x(K, -1);
  for(int i = 0; i < M; ++i){
    for(int j = 0; j < A[i]; ++j){
        x[B[i][j]] = i;
    }
  }
  vector<int> ord(N, -1);
  for(int i = 0; i < N; ++i){
    if(x[C[i]] == -1){
        return 0;
    }else{
        ord[i] = x[C[i]];
    }
  }
  for(int i = 0; i < N; ++i){
    if(i && ord[i] < ord[i - 1]){
        for(int j = i + 1; j < N; ++j){
            if(ord[j] < ord[j - 1]){
                return 0;
            }
        }
        return 2;
    }
  }
  return 1;
}
#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...