ryan
|
8270ee7aa8
|
never touching day 15 ever again
|
2023-11-21 16:50:51 -08:00 |
|
ryan
|
894e83fe12
|
fix day 15 for example inputs
part 1 didn't work for the example input :(
|
2023-11-21 16:48:03 -08:00 |
|
ryan
|
11546bff5f
|
fix ocamlformat
apparently `version = x` simply refuses to format if you dont have the
specified version. doesn't seem very useful for a repo like this.
|
2023-11-21 16:47:17 -08:00 |
|
ryan
|
d1e69ba66e
|
cosmetic refactoring for day 15
|
2023-11-20 18:57:00 -08:00 |
|
ryan
|
2887274ad9
|
update the comment in day 15.1
|
2023-11-20 18:34:44 -08:00 |
|
ryan
|
6758130700
|
speed up day 15.1 with intersections
also update the vec module to use Iter in some places
|
2023-11-20 18:26:55 -08:00 |
|
ryan
|
ff4bb0ae89
|
simplify day 15 parsing with regex
|
2023-11-20 14:26:01 -08:00 |
|
ryan
|
b69f867423
|
update opam file
|
2023-11-20 14:25:38 -08:00 |
|
ryan
|
a652ec69da
|
add memo wrapper for recursive functions
|
2023-11-20 14:11:04 -08:00 |
|
rmanseau
|
421616a282
|
add dev env packages to depends
|
2023-11-20 13:36:40 -08:00 |
|
rmanseau
|
f775ed645b
|
fix opam file and add install steps to README
|
2023-11-20 12:24:23 -08:00 |
|
ryan
|
705c9e9a7c
|
faster 15.2 solution with line intersections :/
|
2023-11-10 18:24:41 -08:00 |
|
ryan
|
8d97e7601c
|
very slow solution to day 15 part 2 :)
could be sped up by doing math to find intesections points of the
borders but that sounds boring
|
2023-11-09 14:23:41 -08:00 |
|
ryan
|
b89e9c05ef
|
refac day 14 to use new Vec2.bounds function
|
2023-11-08 10:37:44 -08:00 |
|
ryan
|
b90478cd03
|
solve day 15 part 1 !
|
2023-11-08 10:37:31 -08:00 |
|
ryan
|
383c6c0fca
|
add Vec2.iter_region
|
2023-11-08 10:36:33 -08:00 |
|
ryan
|
19a763b73f
|
manually implement show & pp for Vec2
so that it prints as if it were a tuple
|
2023-11-08 09:14:22 -08:00 |
|
ryan
|
dcb1338aa3
|
parse day 15
|
2023-11-08 09:14:00 -08:00 |
|
ryan
|
724576d120
|
refactor day 14 a bit
|
2023-11-01 14:40:16 -07:00 |
|
ryan
|
ceaebf895d
|
solve day 14!
|
2023-11-01 14:14:46 -07:00 |
|
ryan
|
ceb0f04a78
|
implement sand dropping logic & pretty visuals
|
2023-11-01 12:10:15 -07:00 |
|
ryan
|
c5c9b584c0
|
update Grid.%() operator to return option
|
2023-11-01 12:09:53 -07:00 |
|
ryan
|
80f29ae00e
|
swap Vec2 up/down
going down on the grid increases the int for y
|
2023-11-01 12:08:43 -07:00 |
|
ryan
|
2418d2ff0d
|
normalize points in input
this way i can print the full input in as small a space as possible!
|
2023-10-31 18:06:12 -07:00 |
|
ryan
|
1ca2a95e1d
|
make Grid.set_e throw out of bounds errors
|
2023-10-31 18:05:10 -07:00 |
|
ryan
|
61e3520ede
|
parse day 14 grid
haven't implemented the falling sand yet, but theres a cool expect test
that draws the grid
|
2023-10-31 17:04:20 -07:00 |
|
ryan
|
98f47654f8
|
change Vec2 implementation to a record type
|
2023-10-31 15:57:13 -07:00 |
|
ryan
|
88acb381f1
|
move Grid into its own file
|
2023-10-31 15:57:11 -07:00 |
|
ryan
|
1d60878428
|
add init_grid func
|
2023-10-31 14:43:12 -07:00 |
|
ryan
|
63bad67c1b
|
create angstrom wrapper in Utils for int parser
and other common parsers for the future
|
2023-10-31 14:40:22 -07:00 |
|
ryan
|
8fe7e77b52
|
put packet in a inline module cuz why not
|
2023-10-31 10:08:20 -07:00 |
|
ryan
|
06f695b34c
|
tighten up day 13
List.compare is neat!
|
2023-10-31 09:45:04 -07:00 |
|
ryan
|
fa8970b0de
|
day 13, first parser combinator! thx angstrom <3
|
2023-10-30 15:37:45 -07:00 |
|
ryan
|
dfa2cf11a1
|
add Vec2.origin for (0,0)
|
2023-10-30 11:21:34 -07:00 |
|
ryan
|
8562bc8385
|
finished day 12, thx dijkstra !!
|
2023-10-23 19:49:18 -05:00 |
|
ryan
|
887d961d29
|
flatten array of array in grid implementation
makes the new find function much simpler to implement
|
2023-10-22 11:43:27 -05:00 |
|
ryan
|
31a75867fa
|
add expect tests
|
2023-10-09 14:14:13 -07:00 |
|
ryan
|
b6eae27d9d
|
get rid of executable
expect tests will make them kinda pointless
|
2023-10-09 14:14:06 -07:00 |
|
ryan
|
fe5cd3666f
|
move grid parse & iter into Vec2
|
2023-10-09 13:58:53 -07:00 |
|
ryan
|
250d978a38
|
solve day 11 :)
|
2023-10-08 19:10:12 -07:00 |
|
ryan
|
c93c273ffd
|
solve day 10
|
2023-10-07 12:58:57 -07:00 |
|
ryan
|
bf5d3c1656
|
clean up vec stuff
|
2023-10-07 12:58:50 -07:00 |
|
ryan
|
1ee3a5a3c5
|
solve day 9 :)
|
2023-10-05 15:56:02 -07:00 |
|
ryan
|
5e1c30637e
|
move vec2 into a new file & add a pretty printer
now it shows up properly in utop !!
|
2023-10-05 15:55:05 -07:00 |
|
ryan
|
239af2f93b
|
refactor day 8 a bit
|
2023-10-01 13:12:36 -07:00 |
|
ryan
|
7d6b43ba93
|
day 8 complete !
|
2023-10-01 01:55:36 -07:00 |
|
ryan
|
b7aabdedcb
|
dont let warnings fail the build >:(
|
2023-10-01 01:54:23 -07:00 |
|
ryan
|
3d2a2f2c4d
|
added comment & got rid of match%pcre
|
2023-09-30 23:20:47 -07:00 |
|
ryan
|
1fdb1ebc36
|
solved day 7 !!
|
2023-09-30 19:15:28 -07:00 |
|
ryan
|
666c81118f
|
update day5 to use terse array syntax
array.(index) <- some_value
|
2023-09-27 21:26:52 -07:00 |
|