답안 #288098

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
288098 2020-09-01T08:43:55 Z tqbfjotld "The Lyuboyn" code (IZhO19_lyuboyn) C++14
34 / 100
273 ms 14500 KB
#include <bits/stdc++.h>
using namespace std;

vector<int> seq;
vector<vector<int> > fl;

int main(){
    int n,k,t;
    scanf("%d%d%d",&n,&k,&t);
    if (k%2==0){
        printf("-1");
        return 0;
    }

    for (int x = 1; x<=(1<<n)/2; x++){
        vector<int> to;
        if (k==1) to.push_back(x&-x);
        else if (k==3){
            if ((x&-x)>=16){
                to.push_back(x&-x);
                to.push_back(1);
                to.push_back(2);
            }
            else{
                for (int X = 1; X<=8; X<<=1){
                    if (X!=(x&-x)){
                        to.push_back(X);
                    }
                }
            }
        }
        fl.push_back(to);
    }
    int cur = 0;
    for (int x = 0; x<(1<<n); x++){
        seq.push_back(cur);
        //printf("pushed %d\n",cur);
        if (x>=fl.size()){
            for (auto y : fl[x-fl.size()]){
                cur^=y;
            }
        }
        else {
            for (auto y : fl[x]){
                cur ^= y;
            }
        }
    }
    if (n==4 && k==3 && t==1){
        seq.clear();
        seq = {0,14,3,13,6,8,5,11,12,2,15,1,10,4,9,7};
    }
    int num = 0;
    for (int x = 0; x<n; x++){
        char c;
        num<<=1;
        scanf(" %c",&c);
        num += c-'0';
    }
    int stpos = -1;
    for (int x = 0; x<seq.size(); x++){
        if (seq[x]==num){
            stpos = x;
        }
    }
    assert(stpos!=-1);
    printf("%d\n",1<<n);
    for (int x = 0; x<(1<<n); x++){
        for (int y = n-1; y>=0; y--){
            if (seq[(x+stpos)%seq.size()]&(1<<y)){
                printf("1");
            }
            else printf("0");
        }
        printf("\n");
    }
}

Compilation message

lyuboyn.cpp: In function 'int main()':
lyuboyn.cpp:38:14: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::vector<int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   38 |         if (x>=fl.size()){
      |             ~^~~~~~~~~~~
lyuboyn.cpp:61:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   61 |     for (int x = 0; x<seq.size(); x++){
      |                     ~^~~~~~~~~~~
lyuboyn.cpp:9:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    9 |     scanf("%d%d%d",&n,&k,&t);
      |     ~~~~~^~~~~~~~~~~~~~~~~~~
lyuboyn.cpp:57:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   57 |         scanf(" %c",&c);
      |         ~~~~~^~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 256 KB Ok
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 256 KB Ok
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 256 KB Ok
2 Correct 0 ms 256 KB Ok
3 Correct 0 ms 256 KB Ok
4 Correct 0 ms 256 KB Ok
5 Correct 0 ms 256 KB Ok
6 Correct 0 ms 256 KB Ok
7 Correct 0 ms 256 KB Ok
8 Correct 0 ms 256 KB Ok
# 결과 실행 시간 메모리 Grader output
1 Correct 273 ms 14500 KB Ok
2 Correct 131 ms 7340 KB Ok
3 Correct 1 ms 384 KB Ok
4 Correct 1 ms 416 KB Ok
5 Correct 1 ms 256 KB Ok
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 256 KB Ok
2 Correct 8 ms 768 KB Ok
3 Correct 142 ms 7336 KB Ok
4 Correct 66 ms 3760 KB Ok
5 Correct 1 ms 384 KB Ok
6 Correct 2 ms 384 KB Ok
7 Correct 32 ms 1972 KB Ok
8 Correct 1 ms 384 KB Ok
# 결과 실행 시간 메모리 Grader output
1 Runtime error 14 ms 10864 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 273 ms 14500 KB Ok
2 Correct 131 ms 7340 KB Ok
3 Correct 1 ms 384 KB Ok
4 Correct 1 ms 416 KB Ok
5 Correct 1 ms 256 KB Ok
6 Correct 1 ms 256 KB Ok
7 Correct 8 ms 768 KB Ok
8 Correct 142 ms 7336 KB Ok
9 Correct 66 ms 3760 KB Ok
10 Correct 1 ms 384 KB Ok
11 Correct 2 ms 384 KB Ok
12 Correct 32 ms 1972 KB Ok
13 Correct 1 ms 384 KB Ok
14 Runtime error 14 ms 10864 KB Execution killed with signal 11
15 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 7 ms 5620 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -