답안 #173544

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
173544 2020-01-04T14:58:16 Z mosiashvililuka "The Lyuboyn" code (IZhO19_lyuboyn) C++14
0 / 100
13 ms 376 KB
#include<bits/stdc++.h>
using namespace std;
int a,b,c,d,e,n,k,t,p[(1<<19)],pi,cnt;
string ss;
bool bo[(1<<19)];
string totwo(int q){
    string s;
    while(q>0){
        if(q%2==0) s.push_back('0'); else s.push_back('1');
        q/=2;
    }
    while(s.size()<n) s.push_back('0');
    for(int h=0; h<s.size()/2; h++) swap(s[h],s[s.size()-h-1]);
    return s;
}
void dfsk(int q){
	cnt++;
    pi++;
    p[pi]=q;
    bo[q]=1;
    if(pi==(1<<n)){
        cout<<(1<<n)<<endl;
        for(int h=1; h<=pi; h++) cout<<totwo(p[h])<<endl;
        exit(0);
    }
    if(cnt>=40){
    	cout<<-1;
    	exit(0);
	}
    for(int h=0; h<=(1<<n)-1; h++){
        if(bo[h]==0&&__builtin_popcount((p[pi]^h))==k){
            if(pi==(1<<n)-1&&__builtin_popcount((p[1]^h))!=k&&t==1) continue;
            dfsk(h);
        }
    }
    bo[q]=0;
    pi--;
}
int main(){
    ios_base::sync_with_stdio(false),cin.tie(0),cout.tie(0);
    cin>>n>>k>>t;
    cin>>ss;
    int hj=0;
    for(int h=0; h<n; h++){
    	if(ss[h]=='1') hj+=(1<<h);
	}
    dfsk(hj);
    return 0;
}

Compilation message

lyuboyn.cpp: In function 'std::__cxx11::string totwo(int)':
lyuboyn.cpp:12:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     while(s.size()<n) s.push_back('0');
           ~~~~~~~~^~
lyuboyn.cpp:13:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int h=0; h<s.size()/2; h++) swap(s[h],s[s.size()-h-1]);
                  ~^~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 376 KB First number in answer is not x 1 2
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 376 KB Output -1 while solution exists
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 376 KB Ok
2 Correct 13 ms 376 KB Ok
3 Correct 2 ms 376 KB Ok
4 Incorrect 2 ms 376 KB Unexpected end of file - int32 expected
5 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 376 KB Output -1 while solution exists
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 376 KB Output -1 while solution exists
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 376 KB Output -1 while solution exists
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 376 KB Output -1 while solution exists
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 7 ms 376 KB Output -1 while solution exists
2 Halted 0 ms 0 KB -