This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "paint.h"
#include <bits/stdc++.h>
using namespace std;
const int N = 2e5+5;
int n, k;
int pref[N], suff[N];
string solve_puzzle(string s, vector<int> c) {
n = s.length();
k = c.size();
int last = 0;
for(int i=0;i<k;i++){
pref[i+1] = last+1+c[i];
last = pref[i+1];
}
suff[k-1] = n-1;
last = n-1;
for(int i=k-1;i>0;i--){
suff[i-1] = last-1-c[i];
last = suff[i-1];
}
string ans(n, '?');
for(int i=0;i<k;i++){
int r=pref[i]+c[i]-1, l=suff[i]-c[i]+1;
for(;l<=r;l++)ans[l] = 'X';
}
for(int i=0;i<n;i++){
if(i != 0 && i != n-1 && ans[i-1]=='X' && ans[i+1]=='X' && ans[i]=='?')ans[i]='_';
}
return ans;
}
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |