import
numpy as np
from
numpy.linalg
import
inv
a
=
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
]
tdm
=
[[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
],
[
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
]]
ecm
=
[[
3
,
4
],
[
3
,
6
]]
smallalpha
=
[
" "
,
"a"
,
"b"
,
"c"
,
"d"
,
"e"
,
"f"
,
"g"
,
"h"
,
"i"
,
"j"
,
"k"
,
"l"
,
"m"
,
"n"
,
"o"
,
"p"
,
"q"
,
"r"
,
"s"
,
"t"
,
"u"
,
"v"
,
"w"
,
"x"
,
"y"
,
"z"
]
capitalalpha
=
[
" "
,
"A"
,
"B"
,
"C"
,
"D"
,
"E"
,
"F"
,
"G"
,
"H"
,
"I"
,
"J"
,
"K"
,
"L"
,
"M"
,
"N"
,
"O"
,
"P"
,
"Q"
,
"R"
,
"S"
,
"T"
,
"U"
,
"V"
,
"W"
,
"X"
,
"Y"
,
"Z"
]
alphavalues
=
[
0
,
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
13
,
14
,
15
,
16
,
17
,
18
,
19
,
20
,
21
,
22
,
23
,
24
,
25
,
26
,
27
]
lenb
=
6
a
=
[
63
,
46
,
12
,
81
,
48
,
12
]
sobj
=
slice
(lenb)
a
=
a[sobj]
j
=
0
k
=
0
n
=
int
(lenb
/
2
)
for
i
in
range
(
0
, lenb):
if
(j<n):
tdm[k][j]
=
a[i]
j
=
j
+
1
else
:
k
=
k
+
1
j
=
0
tdm[k][j]
=
a[i]
j
=
j
+
1
dcm
=
inv(ecm)
dcm
=
np.matmul(dcm, tdm)
i
=
0
j
=
0
k
=
0
for
i
in
range
(
2
):
for
j
in
range
(
int
(lenb
/
2
)):
a[k]
=
dcm[i][j]
k
=
k
+
1
text
=
""
for
i
in
range
(
0
, lenb):
for
j
in
range
(
0
,
27
):
if
(a[i]
=
=
alphavalues[j]):
text
=
''.join([text, smallalpha[j]])
print
(
"Decoded message = "
+
text)