Skip to content

Instantly share code, notes, and snippets.

@skatenerd
skatenerd / DayTwelve.hs
Created December 12, 2022 19:33
Aay Twelve
{-# LANGUAGE OverloadedStrings #-}
module DayTwelve
( partTwo
) where
import qualified Data.Maybe as M
import qualified Data.Text as T
import qualified Data.Text.IO as TI
import qualified Data.List as L
import qualified Data.List.Extra as LE
@skatenerd
skatenerd / DayTen.hs
Created December 12, 2022 14:40
DayTen.hs
{-# LANGUAGE OverloadedStrings #-}
module DayTen
( partOne
) where
import qualified Data.Text as T
import qualified Data.Text.IO as TI
import qualified Data.Maybe as M
import qualified Data.List as L
import qualified Data.Set as S
@skatenerd
skatenerd / DayNine.hs
Created December 9, 2022 14:06
Day nine advent
module DayNine
( partOne
) where
import qualified Data.Text as T
import qualified Data.Text.IO as TI
import qualified Data.Maybe as M
import qualified Data.List as L
import qualified Data.Set as S
import qualified Data.List.Extra as LE
@skatenerd
skatenerd / DayEight.hs
Created December 8, 2022 14:54
advent day eight
module DayEight
( partOne
) where
import qualified Data.Set as S
import qualified Data.List as L
import qualified Data.Text as T
import qualified Data.Text.IO as TI
import Control.Applicative
cartesianProduct a b = (,) <$> a <*> b
@skatenerd
skatenerd / DaySeven.hs
Created December 7, 2022 17:38
advent day seven
{-# LANGUAGE OverloadedStrings #-}
module DaySeven
( go
) where
import qualified Data.Text as T
import qualified Data.Text.IO as TI
import qualified Data.Maybe as M
import qualified Data.List as L
import qualified Control.Monad.State as S
@skatenerd
skatenerd / daysix.hs
Last active December 6, 2022 16:19
advent of code day 6
{-# LANGUAGE OverloadedStrings #-}
module DaySix
( signalStart
) where
import qualified Data.Maybe as M
import qualified Data.List as L
import Data.Set as S
countDistinct :: (Ord a) => [a] -> Int
@skatenerd
skatenerd / day5.hs
Last active December 5, 2022 15:19
Advent of code 2022 day
{-# LANGUAGE OverloadedStrings #-}
module DayFive
( partOne, partTwo
) where
import qualified Data.Text as T
import qualified Data.Text.IO as TI
import qualified Data.Maybe as M
import qualified Data.List as L
import qualified Control.Monad.State as S
@skatenerd
skatenerd / daytwo.hs
Created December 2, 2022 23:43
AOC 2022 Day 2
module DayTwo (partOne, partTwo) where
import qualified Data.Text as T
import qualified Data.Text.IO as TI
import qualified Data.Maybe as M
import qualified Data.List as L
data Outcome = Win | Loss | Tie deriving (Eq, Show)
data Move = Rock | Paper | Scissor deriving (Eq, Show)
data Game = PartOneGame { us :: Move, them :: Move } |
from functools import reduce
def test(f):
assert f([1,2,2,2,3]) == [[2,2,2]]
assert f([1,4,4,6,3,3,3,2,5,5,5,3,1]) == [[3,3,3],[5,5,5]]
assert f([1,2,2,2,3,2,2,2,2]) == [[2,2,2],[2,2,2,2]]
def get_from_array(array, index):
if index < 0:
return None
@skatenerd
skatenerd / get_data.js
Last active January 29, 2021 14:47
whenisgood pairs
JSON.stringify(Object.keys(respondents).map(function(k) { return respondents[k]}))