Загрузка данных


from itertools import product
from string import printable
alp=list(printable)


def dd(x, y):
    d=''
    while(x//y)!=0:
        d+=str(alp[x%y])
        x=x//y
    d+=str(alp[x])
    d=d[::-1]
    return(d)

'''


#8
def f(n):
    b=str(n)
    b=str(format(n, '08b'))
    f=''
    for i in b:
        if i =='1':
            f+='0'
        else:
            f+='1'
    return (n-int(f,2))

s = set()
g = set()
o=0
for x in range(128,255):
    y= f(x)

    if y==175:
        print(x)
        o+=1
    s.add(y)
    g.add(x)
print(o)

#3
def f(n):
    b=str(n)
    if n%4==0:
        r='2' + str(dd(n,12)) + '64'
    else:
        c=list(dd(int(b),12))
        c.append(max(list(dd(int(b),12))))
        r=''.join(map(str, c))
    return int(r,12)

s = set()
g = set()
for x in range(0,9999):
    y= f(x)
    if y>1799:
        s.add(y)
        g.add(x)
print(min(s))


#6
def f(n):
    b=str(n)
    if n%3==0:
        r=dd(n,3) + ''.join(map(str, (list(dd(n,3)))[-2:]))
    else:
        r=str(dd(n,3)) + dd(((n%3)*5),3)
    return int(r,3)

s = set()
g = set()
for x in range(999999):
    y= f(x)
    if y<159:
        s.add(y)
        g.add(x)
print(max(g))

#9
def f(n):
    b=str(n)
    if n%3==0:
        r=dd(n,3) + ''.join(map(str, (list(dd(n,3)))[-2:]))
    else:
        r=str(dd(n,3)) + dd(((n%3)*5),3)
    return int(r,3)

s = set()
g = set()
for x in range(999999):
    y= f(x)
    if y<159:
        s.add(y)
        g.add(x)
print(max(g))

#10

def f(n):
    b=str(n)
    b=bin(n)[2:]
    if n%2==0:
        b+='01'
    else:
        b+='10'
    
    return int(b,2)

s = set()
g = set()
o=0

for x in range(999999):
    y= f(x)
    if y>82:
        s.add(y)
        g.add(x)
print(min(s))

'''