Submission #102707

#TimeUsernameProblemLanguageResultExecution timeMemory
102707daniel920712Paint By Numbers (IOI16_paint)C++14
10 / 100
2057 ms384 KiB
#include <iostream> #include <stdio.h> #include <vector> #include "paint.h" using namespace std; int con[105]={0}; int N,M,ans=0; vector < int > start; int all[105]={0}; void F(int here,int what,string &a,vector < int > &c) { //printf("%d %d\n",here,what); if(N-here+1<all[what]) return ; int i,j; if(here==N&&what==M) { ans++; for(i=0;i<M;i++) { //printf("%d ",start[i]); for(j=start[i];j-start[i]<c[i];j++) con[j]++; } //printf("\n"); } else if(here>=N) return ; else { F(here+1,what,a,c); if(what!=M&&(!what||start[what-1]+c[what-1]!=here)) { start.push_back(here); F(here+c[what],what+1,a,c); start.pop_back(); } } } string solve_puzzle(string s, vector < int > c) { int i,j; N=s.length(),M=c.size(); //printf("%d %d\n",N,M); all[M]=0; for(i=M-1;i>=0;i--) all[i]=all[i+1]+c[i]+1; F(0,0,s,c); for(i=0;i<N;i++) { if(con[i]==0) s[i]='_'; else if(con[i]==ans) s[i]='X'; else s[i]='?'; } return s; }

Compilation message (stderr)

paint.cpp: In function 'std::__cxx11::string solve_puzzle(std::__cxx11::string, std::vector<int>)':
paint.cpp:40:11: warning: unused variable 'j' [-Wunused-variable]
     int i,j;
           ^
#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...