이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
#include "paint.h"
using namespace std;
string solve_puzzle(string s,vector<int> c){
int ww[s.size()]={0},bb[s.size()]={0};
int k = c.size();
int n = s.size();
for(int i = 0;i<(1<<n);i++){
int cnt = 0 , idx = 0;
bool ss = 1;
for(int j = 0;j<n;j++){
if(i&(1<<j)){
cnt++;
}else{
if(cnt!=0){
if(idx>=k||c[idx]!=cnt){
ss = 0;
break;
}
idx++;
cnt = 0;
}
}
}
if(cnt!=0){
if(idx>=k||c[idx]!=cnt){
continue;
}
idx++;
}
if(ss&&idx==k){
for(int j = 0;j<n;j++){
if(i&(1<<j))ww[j] = 1;
else bb[j] = 1;
}
}
}
string v;
for(int i = 0;i<n;i++){
if(bb[i]&&ww[i])v+='?';
else if(bb[i])v+='_';
else v+='X';
}
return v;
}
/*
int main(){
string s;cin>>s;
int k;cin>>k;
int arr[k];
for(int i = 0;i<k;i++){
cin>>arr[i];
}
cout<<solve_puzzle(s,k,arr);
}
*/
| # | 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... |