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 <iostream>
#include <bits/stdc++.h>
#include <paint.h>
using namespace std;
#define mp make_pair
#define pb push_back
typedef long long llo;
#define a first
#define b second
#define endl "\n"
string solve_puzzle(string s,vector<int> c){
int k=c.size();
int n=s.size();
char ss[n];
strcpy(ss,s.c_str());
int it[n];
for(int i=0;i<n;i++){
if(ss[i]=='.'){
it[i]=0;
}
else if(ss[i]=='_'){
it[i]=1;
}
else{
it[i]=2;
}
}
int pre[n];
memset(pre,0,sizeof(pre));
int su=0;
int x=0;
pair<int,int> ind[k];
for(int i=0;i<k;i++){
ind[i].a=su;
su+=c[i];
// ind[i].a=su;
su+=1;
}
int ma=0;
/*
for(int i=0;i<n;i++){
pre[i]=max(pre[i],ma);
ma=max(ma,pre[i]);
}*/
int suf[n];
memset(suf,0,sizeof(suf));
su=n;
for(int i=k-1;i>=0;i--){
su-=c[i];
ind[i].b=su;
su-=1;
}
/*ma=suf[n-1];
for(int i=n-1;i>=0;i--){
suf[i]=max(suf[i],ma);
ma=max(ma,suf[i]);
}*/
int fill[n];
memset(fill,0,sizeof(fill));
char ans[n];
for(int i=0;i<n;i++){
ans[i]='?';
}
for(int i=0;i<k;i++){
// cout<<ind[i].a<<" "<<ind[i].b<<endl;
int fill2[n];
memset(fill2,0,sizeof(fill2));
/*if(i==k-1){
yy=ind[i].a+c[i];
}
else{
yy=ind[i]
}*/
for(int j=ind[i].a;j<ind[i].a+c[i];j++){
fill[j]+=1;
fill2[j]+=1;
}
for(int j=ind[i].b;j<ind[i].b+c[i];j++){
fill[j]+=1;
fill2[j]+=1;
if(fill2[j]==2){
ans[j]='X';
}
}
}
for(int i=0;i<n;i++){
if(fill[i]==0){
ans[i]='_';
}
}
string ans2="";
for(int i=0;i<n;i++){
ans2+=ans[i];
}
return ans2;
}
/*int main(){
vector<int> bb={3,4};
cout<<solve_puzzle("..........",bb);
return 0;
}*/
Compilation message (stderr)
paint.cpp: In function 'std::__cxx11::string solve_puzzle(std::__cxx11::string, std::vector<int>)':
paint.cpp:16:6: warning: variable 'it' set but not used [-Wunused-but-set-variable]
int it[n];
^~
paint.cpp:31:6: warning: unused variable 'x' [-Wunused-variable]
int x=0;
^
paint.cpp:40:6: warning: unused variable 'ma' [-Wunused-variable]
int ma=0;
^~
# | 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... |