d={'A':'P','B':'E','C':'I','D':'G','E':'V','F':'U','G':'K','H':'X','I':'A','J':'S','K':'N','L':'Z','M':'Y','N':'J','O':'M','P':'F','Q':'H','R':'C','S':'B','T':'R','U':'O','V':'T','W':'L','X':'D','Y':'W','Z':'Q'}
d={'A':'T', 'B':'K','C':'F','D':'R','E':'U','F':'D','G':'V','H':'X','I':'L','J':'M','K':'G','L':'C','M':'Q','N':'A','O':'S','P':'I','Q':'B','R':'P','S':'E','T':'N','U':'O','V':'Y','W':'Z','X':'J','Y':'W','Z':'H'}

d = {v:k for k, v in d.items()}

def sub(c, k):
    ch = c
    for _ in range(k):
        ch = d[ch]
    return ch
alp = "ABCEDFGHIJKLMNOPQRSTUVWXYZ"
mp = {}
for k, v in d.items():
    mp[alp.index(k)] = alp.index(v)
print(mp)
msg = "LZNHOOYDLOHCVYZNTKXLZYRKHLFYKGKF"
msg = "TDLARSITOOSPTCTOELNSLCDTERPTCSFURSFUPPSOIUARTANTKZHXB"
def cipher(s, k):
    return ''.join(sub(c, k) for c in s)

for k in range(1, 50):
    print(k, cipher(msg, k))
# TROIS SEPT SIX ZERO QUATRE HUIT NEUF UN
# AFIN DE PASSER A LA SUITE IL FAUDRA LE CODE CORRESPONDANT A ZQBKW

s='''
XU---N-S--T-X---T---N-----U-TU-O-I-QYUI--Q---------QER--T------SU---------E---TF--E-Q---R--K-A-EU-NHRE-D-J---S-S-H--O--EJ-QTCG-IX---N-EG-U------NE---D-N---YPT---F-U-E--YUDN--P-UAS----T-----PQEU--E-M-OCPMNW---O--T---Y-D-AP-----YT-C--T--MB-EK-Y-M----O--RI---ET----DQ-N--IC----------P----Q---E-C--M-RI-B-----Y--C-B--QL------E---X-------T----B------D-----E-----T-N-X--CAA--VF--AA-EYYOX--YQW--H-NEDN--N-NXM--FO--Q---T-N-N--A--I---S---TYVH--DI---UI-XNP--------K-SRSO---SI-RO-PU---B-----TD-E-----X--UFX-LDC-R---UN---------HEST--X-D--NAKPF--UI-XN-U--DT---N--E-U-N-PI---GTTI-----RTS--UP-RE--QEY-T----T--R--U-NF-----UR---CT-N--SJ--A-BSC---NEY-NP---X-AU--I--A-T-D----RU-XDEJ--OI-----S----TS--SPY-QY----X-TU--RT--EE-------Q--E-E----I-------T---S--X----A-------VX-N------X---V--AH-T-VN-SA--QAE-X--W--S--CE---UQ---QQ-H-H--W-Q-T-R-NI-----UNN----ITVNIC--UCW-----ULEE--N---C---RUY-W-BEE--V-----GEF---QXL-ITNE---A--HO-M----M-Q---A--BU-UTN-X--I---O-U---YQRN-TE-ND-----FP-V--E-----US---V-F-----A-----R-S-UV--N-O----U-UH---S-ED---QO--U---PU-CL--GE-U-QU-------DF-F---D-KTX---LT----X-M----NHY-LO--X----SIEY--DIUGLE--TA--EXU-T-Q-----X-SI-Q-OD----NQUH--TM---OI-----I---B------SX-U----X-------NW--BN-S------SQN----T--N---F----A-R-PY-N-T-YU-H-UL-UDR-Y-TN----NHIUU-QOUI----Q------Q----R-H-Y-U-S-US-RE---N---Y-G-U-U-Q-S--R---I---K-UGU--T-HM--S-HIQAU---Q--H-U-----E-P-DUY---NM--HB--N---R-E'
'''
l = divmod(len(s), 36)
print(l)
# f(0)=f(3)=f(5)=f(7)=f(10)= 5,10
# f(1)=9
# f(2)=f(9)=0
# f(4)=8
# f(6)=1
# f(8)=3
f = [10,9,0,2,8,5,1,4,3,6,7]
def perm(s):
    st = ['' for i in range(11)]
    for i in range(11):
        st[f[i]] = s[i]
    return ''.join(st)
print(perm("ABRACADABRA"))
print(perm("DTELKCUZIOC"))

def _next(arr):
    a = [None] * 8
    a[0] = arr[-1]
    a[1] = arr[0]
    a[2] = (arr[1] + arr[0]) % 10
    a[3] = arr[2]
    a[4] = arr[3]
    a[5] = (arr[4] + arr[-1]) % 10
    a[6] = arr[5]
    a[7] = arr[6]
    return a
def _cipher(_arr, s):
    ans = ""
    arr = _arr[:]
    for c in s:        
        d = arr[-1]
        arr = _next(arr)
        ans += chr((ord(c) - 65 + d) % 26 + 65)
    return ans
print(_cipher([3,4,0,8,1,9,5,1], 'HELLO'))

Embed on website

To embed this program on your website, copy the following code and paste it into your website's HTML: