12-2 ferig

This commit is contained in:
2023-12-11 18:05:49 +01:00
parent 25175daff9
commit ba91270159
2 changed files with 59 additions and 1 deletions

2
.idea/misc.xml generated
View File

@@ -3,7 +3,7 @@
<component name="Black"> <component name="Black">
<option name="sdkName" value="Python 3.11 (AdventOfCode2023)" /> <option name="sdkName" value="Python 3.11 (AdventOfCode2023)" />
</component> </component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" project-jdk-name="Python 3.10 (AdventOfCode2023)" project-jdk-type="Python SDK"> <component name="ProjectRootManager" version="2" languageLevel="JDK_21" project-jdk-name="Python 3.11 (AdventOfCode2023)" project-jdk-type="Python SDK">
<output url="file://$PROJECT_DIR$/out" /> <output url="file://$PROJECT_DIR$/out" />
</component> </component>
</project> </project>

58
11/11-2.py Normal file
View File

@@ -0,0 +1,58 @@
#!/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)