제출 #1161785

#제출 시각아이디문제언어결과실행 시간메모리
1161785The_Samurai벽 칠하기 (APIO20_paint)C++20
12 / 100
27 ms10056 KiB
#include "paint.h"
#include "bits/stdc++.h"
using namespace std;

int minimumInstructions(int n, int m, int k, vector<int> c, vector<int> ln, vector<vector<int>> g) {
    vector<int> owner(k, -1);
    for (int i = 0; i < m; i++) {
        for (int x: g[i]) owner[x] = i;
    }
    vector<int> does(n);
    for (int i = 0; i < n; i++) {
        if (owner[c[i]] == -1) return -1;
        does[i] = owner[c[i]];
    }
    set<int> st;
    for (int i = 0; i < m; i++) st.insert(does[i]);
    for (int i = m; i < n; i++) {
        if (does[i] != does[i - m]) return -1;
    }
    if (st.size() != m) return -1;

    return (n + m - 1) / m;
}
#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...