From e400c1fab39d87c72f867007952ae3ef65823766 Mon Sep 17 00:00:00 2001 From: Tomasz Kramkowski Date: Mon, 6 Dec 2021 09:07:29 +0000 Subject: day 6 numpy: shorter --- 6np.py | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/6np.py b/6np.py index 92273b1..8d90f1f 100644 --- a/6np.py +++ b/6np.py @@ -4,17 +4,8 @@ import numpy as np fish = Counter(map(int, open_day(6).read().split(','))) fish = np.array([fish[i] for i in range(9)]) -mat = np.array([ - [0, 0, 0, 0, 0, 0, 1, 0, 1], - [1, 0, 0, 0, 0, 0, 0, 0, 0], - [0, 1, 0, 0, 0, 0, 0, 0, 0], - [0, 0, 1, 0, 0, 0, 0, 0, 0], - [0, 0, 0, 1, 0, 0, 0, 0, 0], - [0, 0, 0, 0, 1, 0, 0, 0, 0], - [0, 0, 0, 0, 0, 1, 0, 0, 0], - [0, 0, 0, 0, 0, 0, 1, 0, 0], - [0, 0, 0, 0, 0, 0, 0, 1, 0] -]) +mat = np.eye(9, 9, -1, dtype=int) +mat[0, [6, 8]] = 1 print(sum(np.matmul(fish, np.linalg.matrix_power(mat, 80)))) print(sum(np.matmul(fish, np.linalg.matrix_power(mat, 256)))) -- cgit v1.2.3-54-g00ecf