2024(4): clean up a little, add notes
This commit is contained in:
@ -7,19 +7,17 @@ def scan_line(line):
|
|||||||
return line.count(to_find)
|
return line.count(to_find)
|
||||||
|
|
||||||
def transpose(list_2d):
|
def transpose(list_2d):
|
||||||
#return list(zip(*list_2d))
|
|
||||||
#return list(map(list, zip(*list_2d)))
|
|
||||||
#return list(map(list, itertools.zip_longest(*list_2d, fillvalue=None)))
|
|
||||||
outlist = []
|
outlist = []
|
||||||
for j in range(len(list_2d[0])):
|
for j in range(max(map(len, list_2d))):
|
||||||
outlist.append([])
|
outlist.append([])
|
||||||
for i in range(len(list_2d)):
|
for i in range(len(list_2d)):
|
||||||
outlist[j].append(list_2d[i][j])
|
# TODO: This is a weird edge case.
|
||||||
|
if j < len(list_2d[i]):
|
||||||
|
outlist[j].append(list_2d[i][j])
|
||||||
outlist[j] = "".join(outlist[j])
|
outlist[j] = "".join(outlist[j])
|
||||||
return outlist
|
return outlist
|
||||||
|
|
||||||
def rotate(list_2d):
|
def rotate(list_2d):
|
||||||
#print(list_2d)
|
|
||||||
x_max, y_max = len(list_2d), len(list_2d[0])
|
x_max, y_max = len(list_2d), len(list_2d[0])
|
||||||
diagonal_list = []
|
diagonal_list = []
|
||||||
|
|
||||||
@ -68,8 +66,8 @@ if __name__ == "__main__":
|
|||||||
for line in full_string:
|
for line in full_string:
|
||||||
result += scan_line(line)
|
result += scan_line(line)
|
||||||
result += scan_line(line[::-1])
|
result += scan_line(line[::-1])
|
||||||
print(result)
|
# TODO: Transposion after rotating is ill-defined.
|
||||||
for line in rotate(transpose(full_string)):
|
for line in transpose(rotate(full_string)):
|
||||||
result += scan_line(line)
|
result += scan_line(line)
|
||||||
result += scan_line(line[::-1])
|
result += scan_line(line[::-1])
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user