aoc2016/day03.py

44 lines
1.1 KiB
Python

from tools.aoc import AOCDay
from typing import Any
class Day(AOCDay):
inputs = [
[
(862, "input3"),
],
[
(1577, "input3"),
],
]
def part1(self) -> Any:
ans = 0
for triangle in self.getIntsFromInput():
if (
triangle[0] + triangle[1] <= triangle[2]
or triangle[0] + triangle[2] <= triangle[1]
or triangle[1] + triangle[2] <= triangle[0]
):
continue
ans += 1
return ans
def part2(self) -> Any:
vertical = self.getIntsFromInput()
ans = 0
for x in range(0, len(vertical), 3):
for i in range(3):
if (
vertical[x][i] + vertical[x + 1][i] > vertical[x + 2][i]
and vertical[x][i] + vertical[x + 2][i] > vertical[x + 1][i]
and vertical[x + 1][i] + vertical[x + 2][i] > vertical[x][i]
):
ans += 1
return ans
if __name__ == "__main__":
day = Day(2016, 3)
day.run(verbose=True)