제출 #102706

#제출 시각아이디문제언어결과실행 시간메모리
102706daniel920712Paint By Numbers (IOI16_paint)C++14
10 / 100
2027 ms460 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;
void F(int here,int what,string &a,vector < int > &c)
{
    //printf("%d %d\n",here,what);
    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);
    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;
}

컴파일 시 표준 에러 (stderr) 메시지

paint.cpp: In function 'std::__cxx11::string solve_puzzle(std::__cxx11::string, std::vector<int>)':
paint.cpp:38: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...