Submission #310940

#TimeUsernameProblemLanguageResultExecution timeMemory
310940tengiz05Paint By Numbers (IOI16_paint)C++17
32 / 100
1 ms512 KiB
#include "paint.h" #include <bits/stdc++.h> using namespace std; const int N = 2e5+5; int n, k; int pref[N], suff[N]; string solve_puzzle(string s, vector<int> c) { n = s.length(); k = c.size(); int last = 0; for(int i=0;i<k;i++){ pref[i+1] = last+1+c[i]; last = pref[i+1]; } suff[k-1] = n-1; last = n-1; for(int i=k-1;i>0;i--){ suff[i-1] = last-1-c[i]; last = suff[i-1]; } string ans(n, '?'); for(int i=0;i<k;i++){ int r=pref[i]+c[i]-1, l=suff[i]-c[i]+1; for(;l<=r;l++)ans[l] = 'X'; } for(int i=0;i<n;i++){ if(i != 0 && i != n-1 && ans[i-1]=='X' && ans[i+1]=='X' && ans[i]=='?')ans[i]='_'; } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...