# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1266863 | vtnoo | Paint By Numbers (IOI16_paint) | C++20 | 1 ms | 328 KiB |
#include <bits/stdc++.h>
using namespace std;
const int MAXN=101;
std::string solve_puzzle(std::string s, std::vector<int> c){
int n=s.size(), m=c.size();
int sum=0;
for(int i=0;i<m;i++)sum+=c[i];
int need=sum+(m-1);
string ret="";
for(int i=0;i<m;i++){
ret+=string(c[i], 'X');
ret+='_';
}
ret.pop_back();
int qwe=n-need;
if(qwe){
string s=string(n, '?');
for(int i=0;i<qwe;i++)ret+='_';
int j=0, last=c[j]-1;
for(int i=0;i<n;i++){
if(j<m-1&&ret[i]=='_'){
j++;
last=i+c[j];
continue;
}
if(i+qwe<n&&i+qwe<=last){
s[i+qwe]='X';
}
}
ret=s;
}
return ret;
}
/*
XXX_XXXX__
XXX__XXXX_
XXX___XXXX
_XXX_XXXX_
_XXX__XXXX
__XXX_XXXX
*/
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... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |