#!/usr/bin/env python3 # -*- coding: utf-8 -*- multiplier = 1000000 # multiplier for expansion data = [] koor_adder = multiplier - 1 freie_zeilen = [] c = 0 input_file = open("input", "r") for line in input_file: line = line.strip() if line.count(".") == len(line): freie_zeilen.append(c) data.append(line) c += 1 input_file.close() zeilen = len(data) spalten = len(data[0]) print("freie Zeilen:", freie_zeilen) # leere Spalten ermitteln s_free = [1 for i in range(spalten)] for da in data: for i in range(spalten): if da[i] == "#": s_free[i] = 0 freie_spalten = [] for i in range(len(s_free)): if s_free[i] == 1: freie_spalten.append(i) print("freie Spalten:", freie_spalten) org_koor_list = [] for z in range(len(data)): for s in range(len(data[0])): if data[z][s] == "#": org_koor_list.append([z, s]) print("org:", org_koor_list) koor_list = [] for k in org_koor_list: z_add, s_add = 0, 0 for z in freie_zeilen: if z < k[0]: z_add += koor_adder for s in freie_spalten: if s < k[1]: s_add += koor_adder koor_list.append([k[0]+z_add, k[1]+s_add]) print("new:", koor_list) summe = 0 for k in range(len(koor_list)): for m in range(k+1, len(koor_list)): summe += abs(koor_list[m][0] - koor_list[k][0]) summe += abs(koor_list[m][1] - koor_list[k][1]) print("Lösung", summe)