138592025-01-08 23:56:1442Autókódoláspython3Elfogadva 50/5017ms3392 KiB
from sys import stdin
input=stdin.readline

def main():
    n=N=int(input())
    #print(N,bin(N)[2:])
    p=-1
    c=0
    while n%2==0:
        n//=2
        c+=1
    b=bin(n)[2:]
    T=b.count('1')
    n+=1
    t=bin(n)[2:].count('1')
    n*=2**c
    x=1
    for i in range(T-t):
        n+=x
        x*=2
    #print(b,T*'1')
    if b+c*'0'!=T*'1':
        if N%2==0:
            c=0
            while N%2==0:
                N//=2
                c+=1
            N//=2
            N*=2
            N*=2
            N+=1
            N*=2**(c-1)
            p=N
        else:
            c=0
            while N%2==1:
                N//=2
                c+=1
            d=0
            while N%2==0:
                N//=2
                d+=1
            N//=2
            N*=2
            for j in range(c+1):
                N*=2
                N+=1
            for j in range(d-1):
                N*=2
            p=N
    print(p)
    #print(bin(p)[2:])
    print(n)
    #print(bin(n)[2:])

main()
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/016ms3316 KiB
2Elfogadva0/016ms2980 KiB
3Elfogadva2/216ms3120 KiB
4Elfogadva2/216ms3392 KiB
5Elfogadva2/217ms3120 KiB
6Elfogadva2/216ms3312 KiB
7Elfogadva2/216ms3120 KiB
8Elfogadva4/416ms3136 KiB
9Elfogadva4/414ms3196 KiB
10Elfogadva4/417ms3124 KiB
11Elfogadva4/414ms3080 KiB
12Elfogadva4/416ms3180 KiB
13Elfogadva4/416ms3184 KiB
14Elfogadva4/416ms3176 KiB
15Elfogadva4/416ms3168 KiB
16Elfogadva4/416ms3116 KiB
17Elfogadva4/416ms3028 KiB