Submission #796488

#TimeUsernameProblemLanguageResultExecution timeMemory
796488MalixPaint By Numbers (IOI16_paint)C++14
32 / 100
1 ms308 KiB
#include "paint.h"
#include <bits/stdc++.h>
using namespace std;
#include <cstdlib>

std::string solve_puzzle(std::string s, std::vector<int> c) {
    int n = s.size();
    int k = c.size();
    vector<int> cross(n, 0);
    vector<int> line(n, 0);
    int l = 0; 
    int r = k-1;
    for(int i=0;i<k;i++)r+=c[i];
    int diff;
    for(int i=0;i<k;i++){
        r-=c[i];
        diff = n-r-l-c[i];
        for(int j=0;j<diff;j++){line[l+j]=1;line[n-r-j-1]=1;}
        for(int j=0;j<n-r-l;j++)cross[l+j]=1;
        l+=c[i]+1;r--;
    }
    string ans;
    for(int i=0;i<n;i++){
        if(cross[i] && line[i])ans.push_back(63);
        else if(cross[i])ans.push_back(88);
        else ans.push_back(95);
    }
    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...