Skip to content

Instantly share code, notes, and snippets.

View thejevans's full-sized avatar

John Evans thejevans

View GitHub Profile
@thejevans
thejevans / euler213v1.py
Last active January 29, 2024 05:54
euler213
import numpy as np
# build transition matrix
transition_matrix = np.zeros((900,900))
# corner cases
corner_transition_idx = [(0, 1), (0, 30), (29, 28), (29, 59), (870, 871), (870, 840), (899, 898), (899, 869)]
# edge cases
top_idx = [(x, x+30) for x in range(1, 29)] + [(x, x-1) for x in range(1, 29)] + [(x, x+1) for x in range(1, 29)]
left_idx = [(x, x+30) for x in range(30, 870, 30)] + [(x, x-30) for x in range(30, 870, 30)] + [(x, x+1) for x in range(30, 870, 30)]
# ------------------------------------------------------------------------------
# import packages
# ------------------------------------------------------------------------------
import pathlib
import polars as pl
from pypika import Query, Tables
import pyodbc