# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1165669 | SmuggingSpun | Painting Walls (APIO20_paint) | C++20 | 21 ms | 7360 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){
bool is_sub1 = true;
auto pre_check = [&] (){
vector<int>cnt(k, 0);
for(int i = 0; i < m; i++){
for(int& j : b[i]){
if(cnt[j]++ == 1){
is_sub1 = false;
return;
}
}
}
};
pre_check();
if(is_sub1){
vector<int>to(k, -2);
for(int i = 0; i < m; i++){
for(int& j : b[i]){
to[j] = i;
}
}
int cnt = 1, ans = 0, pre = to[c[0]];
for(int i = 1; i < n; i++, cnt++){
if(cnt == m){
cnt = 0;
if((pre = to[c[i]]) == -2){
return -1;
}
ans++;
}
else if(to[c[i]] != (pre = (pre + 1) % m)){
return -1;
}
}
return ans + 1;
}
if(n <= 500 && m <= 200){
}
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |