+3
-7
python/oct2/level4/routeCipher2.py
+3
-7
python/oct2/level4/routeCipher2.py
···
10
10
11
11
12
12
def encodeRouteCipher(message: str, rows: int) -> str:
13
-
cur_char = 0
14
13
row_len = ceil(len(message) / rows)
15
-
while len(message) % rows != 0:
16
-
message += list(reversed(ascii_lowercase))[cur_char]
17
-
cur_char += 1
14
+
missing_chars = row_len * rows - len(message)
15
+
message += "".join(reversed(ascii_lowercase))[:missing_chars]
18
16
encoded_string = ""
19
17
for i in range(len(message)):
20
18
row, col = getRowAndCol(i, row_len)
···
42
40
for i in range(len(decoded_string)):
43
41
row, col = getRowAndCol(i, rows)
44
42
decoded_message += decoded_string[getIndex(row, col, row_len)]
45
-
while decoded_message[-1].islower():
46
-
decoded_message = decoded_message[:-1]
47
-
return decoded_message
43
+
return decoded_message.rstrip(ascii_lowercase)
48
44
49
45
50
46
print("Testing encodeRouteCipher()...", end="")