#include "paint.h"
#include <cstdlib>
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef vector<ll> vll;
ll n, k;
vll v;
vector<int> a;
ll f (ll ib, ll br, ll ind) {
if (ib==k) {
for (int i = ind; i<n; i++) v[i]++;
return 1;
}
ll res = 0;
ll i =1;
if (ib == 0) i = 0;
for(; i<= br - (k-1) + ib; i++) {
ll aux = f(ib+1, br - i, ind + i + a[ib]);
if (aux >0) {
res += aux;
for (int j=0; j<i; j++) v[j+ind]++;
}
}
return res;
}
std::string solve_puzzle(std::string s, std::vector<int> c) {
n = s.size();
k = c.size();
v.assign(n, 0);
a = c;
ll cb = n;
for (int i=0; i<k; i++) cb -= c[i];
ll r = f(0, cb, 0);
string res = "";
for (int i=0; i<n; i++) {
if (v[i]==0) res.push_back('X');
else if (v[i] == r) res.push_back('_');
else res.push_back('?');
}
return res;
}
컴파일 시 표준 에러 (stderr) 메시지
paint.h:1:9: warning: #pragma once in main file
1 | #pragma once
| ^~~~
paint_c.h:1:9: warning: #pragma once in main file
1 | #pragma once
| ^~~~
# | 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... |