Added 2021 (python)
This commit is contained in:
2000
2021/01/input
Normal file
2000
2021/01/input
Normal file
File diff suppressed because it is too large
Load Diff
25
2021/01/prog.py
Normal file
25
2021/01/prog.py
Normal file
@ -0,0 +1,25 @@
|
||||
def get_input(sample = False, part = 1):
|
||||
with open(f'sample_p{part}' if sample else 'input', 'r') as f:
|
||||
return [int(line.strip()) for line in f.readlines()]
|
||||
|
||||
|
||||
def result(inp, part = 1):
|
||||
res = 0;
|
||||
if part == 1:
|
||||
prev = inp[0]
|
||||
for cur in inp[1:]:
|
||||
if prev <= cur:
|
||||
res += 1;
|
||||
prev = cur;
|
||||
else:
|
||||
prev = 0
|
||||
for cur in range(1, len(inp) - 2):
|
||||
if sum(inp[prev:prev+3]) < sum(inp[cur:cur+3]):
|
||||
res += 1;
|
||||
prev = cur;
|
||||
|
||||
return res
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
print(result(get_input(), part = 2))
|
10
2021/01/sample_p1
Normal file
10
2021/01/sample_p1
Normal file
@ -0,0 +1,10 @@
|
||||
199
|
||||
200
|
||||
208
|
||||
210
|
||||
200
|
||||
207
|
||||
240
|
||||
269
|
||||
260
|
||||
263
|
10
2021/01/test.py
Normal file
10
2021/01/test.py
Normal file
@ -0,0 +1,10 @@
|
||||
from prog import *
|
||||
import unittest
|
||||
|
||||
class Tests(unittest.TestCase):
|
||||
def test_part1(self):
|
||||
self.assertEqual(result(get_input(sample = True)), 7)
|
||||
|
||||
def test_part2(self):
|
||||
self.assertEqual(result(get_input(sample = True), part = 2), 5)
|
||||
|
Reference in New Issue
Block a user