제출 #23849

#제출 시각아이디문제언어결과실행 시간메모리
23849Mamnoon_SiamUnscrambling a Messy Bug (IOI16_messy)C++14
38 / 100
3 ms384 KiB
#include <bits/stdc++.h>
using namespace std;

void add_element(std::string x);
bool check_element(std::string x);
void compile_set();

std::vector<int> restore_permutation(int n, int w, int r)
{
    vector<int> ret=vector<int>(n);
    for(int i=0; i<n; i++) ret[i]=-1;
    string cur=string(n, '0');
    for(int i=n-1; i>0; i--) {
        cur[i]='1';
        add_element(cur);
    }
    compile_set();
    for(int i=0; i<cur.size(); i++) cur[i]='0';
    for(int pos=n-1; pos>0; pos--) {
        for(int i=0; i<n; i++) {
            if(cur[i]=='0') {
                string temp=cur; temp[i]='1';
                if(check_element(temp)==1) {
                    cur=temp;
                    ret[i]=pos;
                    goto siam;
                }
            }
        }
        siam : ;
    }
    for(int i=0; i<n; i++) {
        if(ret[i]==-1) {
            ret[i]=0;
            break;
        }
    }
    return ret;
}

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

messy.cpp: In function 'std::vector<int> restore_permutation(int, int, int)':
messy.cpp:18:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int i=0; i<cur.size(); i++) cur[i]='0';
                  ~^~~~~~~~~~~
#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...