7604 2024. 01. 10 01:05:39 renn Autókódolás cpp17 Elfogadva 50/50 3ms 3880 KiB
#include <bits/stdc++.h>
#define ll long long
#define S 42

using namespace std;

ll N, kovval = 0, elozoval = 0, i;
bool elozo[S], kov[S], nincs_elozo;

int main() {

    cin >> N;

    for(ll i = 0; i < S; i++) {
        kov[S-1-i] = elozo[S-1-i] = N & (1LL << i);
    }

    nincs_elozo = prev_permutation(elozo, elozo + S);
    next_permutation(kov, kov + S);

    for(i = (S-1)*nincs_elozo; i >= 0; --i) {
        elozoval |= ((ll)elozo[i] << (S-1-i));
    }
    for(i = S-1; i >= 0; --i) {
        kovval |= ((ll)kov[i] << (S-1-i));
    }

    cout << (!nincs_elozo ? -1LL : elozoval) << "\n" << kovval << "\n";
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1880 KiB
2 Elfogadva 0/0 3ms 2116 KiB
3 Elfogadva 2/2 2ms 2200 KiB
4 Elfogadva 2/2 3ms 2396 KiB
5 Elfogadva 2/2 3ms 2640 KiB
6 Elfogadva 2/2 3ms 2756 KiB
7 Elfogadva 2/2 3ms 2940 KiB
8 Elfogadva 4/4 3ms 3064 KiB
9 Elfogadva 4/4 3ms 3464 KiB
10 Elfogadva 4/4 3ms 3536 KiB
11 Elfogadva 4/4 3ms 3612 KiB
12 Elfogadva 4/4 3ms 3672 KiB
13 Elfogadva 4/4 2ms 3752 KiB
14 Elfogadva 4/4 2ms 3876 KiB
15 Elfogadva 4/4 2ms 3872 KiB
16 Elfogadva 4/4 2ms 3756 KiB
17 Elfogadva 4/4 3ms 3880 KiB