Submission #1232090

#TimeUsernameProblemLanguageResultExecution timeMemory
1232090clemmy14Paint By Numbers (IOI16_paint)C++20
32 / 100
0 ms328 KiB
#include<bits/stdc++.h>
#include "paint.h"
#include <cstdlib>
using namespace std;

string solve_puzzle(string s, vector<int> c) {
    int n = s.size();
    string ans(n, '?');
    int lo=0, upTo=n;
    for(int i=1; i<c.size(); i++) upTo-=c[i]+1;

    for(int i=0; i<c.size(); i++) {
        if(i != 0) upTo+=c[i]+1;
        //cout << upTo << ' ' << lo << ' ' << c[i] << endl; 
        if(lo+c[i]*2 >= upTo) {
            for(int j=upTo-c[i]; j<c[i]+lo; j++) ans[j]='X';
        }
        lo+=c[i]+1;
    }
    for(int i=1; i<n-1; i++) {
        if(ans[i-1] == 'X' && ans[i+1] == 'X' && ans[i] == '?') ans[i]='_';
    }
    return ans;
}

Compilation message (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 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...