제출 #773555

#제출 시각아이디문제언어결과실행 시간메모리
773555ttamxPaint By Numbers (IOI16_paint)C++14
10 / 100
17 ms304 KiB
#include "paint.h" #include <bits/stdc++.h> using namespace std; string solve_puzzle(string s, vector<int> c) { int n=s.size(); vector<int> v(n); for(int i=0;i<1<<n;i++){ int cnt=0,cur=0; bool ok=true; for(int j=0;j<n;j++){ if(i>>j&1){ cnt++; }else if(cnt>0){ if(cur>=c.size()||c[cur]!=cnt){ ok=false; break; } cnt=0; cur++; } } if(cnt>0){ if(cur>=c.size()||c[cur]!=cnt){ ok=false; }else{ cur++; } } if(cur!=c.size())ok=false; if(ok){ for(int j=0;j<n;j++){ if(i>>j&1){ v[j]|=1; }else{ v[j]|=2; } } } } string ans=""; for(auto x:v){ if(x==1)ans+='X'; if(x==2)ans+='_'; if(x==3)ans+='?'; } return ans; }

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

paint.cpp: In function 'std::string solve_puzzle(std::string, std::vector<int>)':
paint.cpp:16:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   16 |                 if(cur>=c.size()||c[cur]!=cnt){
      |                    ~~~^~~~~~~~~~
paint.cpp:25:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   25 |             if(cur>=c.size()||c[cur]!=cnt){
      |                ~~~^~~~~~~~~~
paint.cpp:31:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   31 |         if(cur!=c.size())ok=false;
      |            ~~~^~~~~~~~~~
#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...