import math

def floorRoot(n, s):
    b = n.bit_length()
    p = math.ceil(b/s)
    x = 2**p
    while x > 1:
        y = (((s - 1) * x) + (n // (x**(s-1)))) // s
        if y >= x:
            return x
        x = y
    return 1

e=3
c=805020127242334055366101084106338318159380669025487944854096749019147092114876319062655375415404940686630370890131538091828517962791705559182147980190064106743981439257891695108968769958854184833599694692936244497276134034683391658524568253432985263893894205482860611555841067637424217249812301434007342625125

print(floorRoot(c, e).to_bytes(64, "big")) # bierzemy 64 bo pewnie flaga jest mniejsza, może tu być dowolnie duża wartość

