Skip to content

Instantly share code, notes, and snippets.

@ldelelis
Created August 3, 2020 14:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ldelelis/3c09a1c5d20947807d09a25447a82996 to your computer and use it in GitHub Desktop.
Save ldelelis/3c09a1c5d20947807d09a25447a82996 to your computer and use it in GitHub Desktop.
# coding: utf-8
import math
def transpose(matrix):
row_length = len(matrix[0])
transpose_matrix = [[] for _ in range(row_length)]
for i, m1 in enumerate(matrix):
for j, m2 in enumerate(m1):
transpose_matrix[j].append(matrix[i][j])
return transpose_matrix
foo = "devoff se puso atr mono"
length = 4
submatrices_length = (len(foo) // length) + 1
matrix = [[] for _ in range(submatrices_length)]
for i, char in enumerate(foo):
matrix_idx = math.ceil(i // length)
matrix[matrix_idx].append(char)
padding = length - len(matrix[-1])
if padding > 0:
for _ in range(padding):
matrix[-1].append('')
transpose_matrix = transpose(matrix)
real_matrix = transpose(transpose_matrix)
matrix_to_vector = []
for row in real_matrix:
for c in row:
matrix_to_vector.append(c)
print(''.join(matrix_to_vector))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment