Submission #146198

# Submission time Handle Problem Language Result Execution time Memory
146198 2019-08-22T19:41:07 Z imeimi2000 "The Lyuboyn" code (IZhO19_lyuboyn) C++17
100 / 100
242 ms 5392 KB
#include <iostream>
#include <algorithm>
#include <vector>

using namespace std;

char _S[20];
int B[1 << 18];
int main() {
    ios_base::sync_with_stdio(0); cin.tie(0);
    int n, k, t;
    cin >> n >> k >> t >> _S;
    if (k + 1 & 1) {
        printf("-1\n");
        return 0;
    }
    int S = 0;
    for (int i = 0; i < n; ++i) S = S << 1 | _S[i] - '0';
    for (int i = 0; i <= k; ++i)
        B[1 << i] = (1 << k + 1) - (1 << i) - 1;
    for (int i = k + 1; i < n; ++i)
        B[1 << i] = (1 << k - 1) + (1 << i) - 1;
    printf("%d\n", 1 << n);
    for (int i = 0; i < (1 << n); ++i) {
        S ^= B[i & -i];
        for (int j = n; j--; ) printf("%c", ((S >> j) & 1) + '0');
        printf("\n");
    }
    return 0;
}

Compilation message

lyuboyn.cpp: In function 'int main()':
lyuboyn.cpp:13:11: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
     if (k + 1 & 1) {
         ~~^~~
lyuboyn.cpp:18:52: warning: suggest parentheses around arithmetic in operand of '|' [-Wparentheses]
     for (int i = 0; i < n; ++i) S = S << 1 | _S[i] - '0';
                                              ~~~~~~^~~~~
lyuboyn.cpp:20:29: warning: suggest parentheses around '+' inside '<<' [-Wparentheses]
         B[1 << i] = (1 << k + 1) - (1 << i) - 1;
                           ~~^~~
lyuboyn.cpp:22:29: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
         B[1 << i] = (1 << k - 1) + (1 << i) - 1;
                           ~~^~~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Ok
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Ok
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Ok
2 Correct 2 ms 376 KB Ok
3 Correct 2 ms 376 KB Ok
4 Correct 2 ms 376 KB Ok
5 Correct 2 ms 376 KB Ok
6 Correct 2 ms 376 KB Ok
7 Correct 2 ms 376 KB Ok
8 Correct 2 ms 376 KB Ok
# Verdict Execution time Memory Grader output
1 Correct 236 ms 5392 KB Ok
2 Correct 113 ms 2856 KB Ok
3 Correct 3 ms 376 KB Ok
4 Correct 2 ms 376 KB Ok
5 Correct 2 ms 376 KB Ok
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Ok
2 Correct 7 ms 504 KB Ok
3 Correct 120 ms 2780 KB Ok
4 Correct 57 ms 1528 KB Ok
5 Correct 2 ms 376 KB Ok
6 Correct 3 ms 376 KB Ok
7 Correct 27 ms 888 KB Ok
8 Correct 2 ms 376 KB Ok
# Verdict Execution time Memory Grader output
1 Correct 235 ms 5340 KB Ok
2 Correct 242 ms 5368 KB Ok
3 Correct 242 ms 5320 KB Ok
4 Correct 120 ms 2720 KB Ok
5 Correct 119 ms 2680 KB Ok
6 Correct 57 ms 1528 KB Ok
7 Correct 55 ms 1400 KB Ok
8 Correct 27 ms 888 KB Ok
9 Correct 28 ms 888 KB Ok
10 Correct 14 ms 632 KB Ok
11 Correct 3 ms 376 KB Ok
12 Correct 2 ms 376 KB Ok
13 Correct 2 ms 380 KB Ok
# Verdict Execution time Memory Grader output
1 Correct 236 ms 5392 KB Ok
2 Correct 113 ms 2856 KB Ok
3 Correct 3 ms 376 KB Ok
4 Correct 2 ms 376 KB Ok
5 Correct 2 ms 376 KB Ok
6 Correct 2 ms 376 KB Ok
7 Correct 7 ms 504 KB Ok
8 Correct 120 ms 2780 KB Ok
9 Correct 57 ms 1528 KB Ok
10 Correct 2 ms 376 KB Ok
11 Correct 3 ms 376 KB Ok
12 Correct 27 ms 888 KB Ok
13 Correct 2 ms 376 KB Ok
14 Correct 235 ms 5340 KB Ok
15 Correct 242 ms 5368 KB Ok
16 Correct 242 ms 5320 KB Ok
17 Correct 120 ms 2720 KB Ok
18 Correct 119 ms 2680 KB Ok
19 Correct 57 ms 1528 KB Ok
20 Correct 55 ms 1400 KB Ok
21 Correct 27 ms 888 KB Ok
22 Correct 28 ms 888 KB Ok
23 Correct 14 ms 632 KB Ok
24 Correct 3 ms 376 KB Ok
25 Correct 2 ms 376 KB Ok
26 Correct 2 ms 380 KB Ok
27 Correct 239 ms 5392 KB Ok
28 Correct 113 ms 2808 KB Ok
29 Correct 236 ms 5372 KB Ok
30 Correct 14 ms 628 KB Ok
31 Correct 3 ms 376 KB Ok
32 Correct 7 ms 504 KB Ok
33 Correct 27 ms 860 KB Ok
34 Correct 2 ms 376 KB Ok
35 Correct 2 ms 376 KB Ok
36 Correct 3 ms 376 KB Ok
37 Correct 2 ms 380 KB Ok
38 Correct 114 ms 2912 KB Ok
# Verdict Execution time Memory Grader output
1 Correct 112 ms 2680 KB Ok
2 Correct 235 ms 5368 KB Ok
3 Correct 235 ms 5368 KB Ok
4 Correct 14 ms 632 KB Ok
5 Correct 2 ms 376 KB Ok
6 Correct 27 ms 888 KB Ok
7 Correct 235 ms 5368 KB Ok
8 Correct 3 ms 376 KB Ok
9 Correct 2 ms 376 KB Ok
10 Correct 2 ms 376 KB Ok
11 Correct 54 ms 1528 KB Ok
12 Correct 132 ms 2808 KB Ok