#include "paint.h"
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
//#define int ll
using P = pair<int, int>;
#define all(x) x.begin(), x.end()
#define rep(x,s,e) for (auto x=(s)-((s)>(e));x!=(e)-((s)>(e));((s)<(e)?x++:x--))
#define sz(x) (int)x.size()
const char nl = '\n';
string solve_puzzle(string s, vector<int> c) {
int n = sz(s), k = sz(c);
int pos = 1, sum = 0;
sum = accumulate(all(c), 0);
bool ok = true;
if (sum+k-1==n)ok = false;
vector<int> res(n+3);
rep(i, 0, k) {
sum -= c[i];
int cu = n-pos-c[i]+1-sum-(k-i-1);
if (pos+cu <= pos+c[i]-1) {
res[pos+cu] += 1;
res[pos+c[i]] -= 1;
}
pos += c[i]+1;
}
string ans;
rep(i, 1, n+1) {
res[i] += res[i-1];
if (res[i])ans += 'X';
else ans += (ok?'?':'_');
}
return ans;
}