summaryrefslogtreecommitdiff
path: root/2023/day1/solve2.py
diff options
context:
space:
mode:
authorBotond Hende <nettingman@gmail.com>2024-12-11 10:18:23 +0100
committerBotond Hende <nettingman@gmail.com>2024-12-11 10:18:23 +0100
commit0a5c1f77d01fc0bd166494787f24562e2fd3a9e9 (patch)
tree99b0d38ef86653b6ff4aae26381ebdf0895f829d /2023/day1/solve2.py
parentcbf5c348db4a693b15e455a23e07072587edf4b0 (diff)
renamed day folders to two digit format
Diffstat (limited to '2023/day1/solve2.py')
-rw-r--r--2023/day1/solve2.py65
1 files changed, 0 insertions, 65 deletions
diff --git a/2023/day1/solve2.py b/2023/day1/solve2.py
deleted file mode 100644
index e545cf3..0000000
--- a/2023/day1/solve2.py
+++ /dev/null
@@ -1,65 +0,0 @@
-def main():
- final_value = 0
- text_digits = {
- "one": "1",
- "two": "2",
- "three": "3",
- "four": "4",
- "five": "5",
- "six": "6",
- "seven": "7",
- "eight": "8",
- "nine": "9"
- }
-
- with open("input", "r") as f:
- for line in f:
- line_strip = line.strip()
- calibration_value = ""
-
- text_digit_pos_first = -1
- text_digit_value_first = None
- for elem in text_digits.keys():
- pos = line_strip.find(elem)
- if pos >= 0:
- if text_digit_pos_first == -1 or pos < text_digit_pos_first:
- text_digit_pos_first = pos
- text_digit_value_first = text_digits[elem]
-
- text_digit_pos_last = -1
- text_digit_value_last = None
- for elem in text_digits.keys():
- pos = line_strip.rfind(elem)
- if pos >= 0:
- if pos > text_digit_pos_last:
- text_digit_pos_last = pos
- text_digit_value_last = text_digits[elem]
-
- for index, char in enumerate(line_strip):
- if text_digit_pos_first != -1 and index >= text_digit_pos_first:
- calibration_value += text_digit_value_first
- break
-
- if char.isdigit():
- calibration_value += char
- break
-
- index = len(line_strip)
- for char in reversed(line_strip):
- index -= 1
-
- if text_digit_pos_last != -1 and index <= text_digit_pos_last:
- calibration_value += text_digit_value_last
- break
-
- if char.isdigit():
- calibration_value += char
- break
-
- final_value += int(calibration_value)
-
- print(final_value)
-
-
-if __name__ == '__main__':
- main()