Sign in

Daria

@gereleth.bsky.social
48 followers 43 following 76 posts

Data scientist. I love coding and puzzles. Play my pipes game: hexapipes.vercel.app/play

PostsRepliesMedia
Daria @gereleth.bsky.social · 13/12/2025
Timings of my #AdventOfCode 2025 solutions in #python. I used scipy for day 10 LP and some numpy for day 9. The rest are in plain python 3.13. The task I enjoyed the most was the graph of day 11 - hard at first and really nice when it clicked. The solution is so pretty =).
A bar chart showing solution times in seconds for the tasks of Advent of Code 2025. The longest time is 1 s for part 2 of day 9 (Movie Theater). Other times are below 0.4 s.
140
Daria @gereleth.bsky.social · 08/12/2025
#AdventOfCode 2025 - Day 7 - Laboratories #py5 animation for part 2 - just adding up the counts while tachyon beams flow down-down-down
1100
Daria @gereleth.bsky.social · 08/12/2025
#AdventOfCode 2025 - Day 8 - Playground Rendered with #py5 (first time I made something legible with the 3d renderer 😁)
180
Daria @gereleth.bsky.social · 18/06/2025
My pipes game just got two new grids =) I like the mix of hexagons, triangles and squares - hexapipes.vercel.app/rhombitrihex... And the triangular grid is just pure minimalism - three distinct tiles and that's it hexapipes.vercel.app/triangular/5
030
Daria @gereleth.bsky.social · 07/01/2025
Saint Petersburg at night as seen from an airplane window on my recent flight. Spectacular view.
020
Daria @gereleth.bsky.social · 26/12/2024
A playlist of all the animations I made for #AdventOfCode 2024: www.youtube.com/playlist?lis... Managed to do a total of 14 days with #py5. Curiously the number is exactly the same as in '23 when I used #pygame. Each video has a link to the animation source code if you wanna see the messy plumbing)
youtube.com
Advent of Code 2024 Visualisations - YouTube
Animations illustrating the solutions to Advent of Code problems of 2024.
0100
Daria @gereleth.bsky.social · 25/12/2024
All done with #AdventOfCode 2024. Fun ride as always! Most memorable days for me: - Day 14 (find the tree) - Day 21 (robots inception) - Day 24 (so that's how binary addition works!) #py5 was very nice for making animations and I learned to use a statemachine to manage vis data
1141
Daria @gereleth.bsky.social · 24/12/2024
Thanks, #AdventOfCode, now I know how to construct a binary addition apparatus from logic gates 🤯 I submitted a handcrafted part2 answer earlier but I've now written some code that finds the swaps. Who knows if it works on other inputs =) github.com/gereleth/aoc...
150
Daria @gereleth.bsky.social · 23/12/2024
Cutesy structure this graph has. Outer layers are still hairy, I haven't figured them out =). #AdventOfCode Day 23 LAN Party
170
Daria @gereleth.bsky.social · 22/12/2024
#AdventOfCode Day 20 - Race Condition Showing millions of cheats is tricky so this one turned out a little weird =). In part 2 it repaints the points by their total possible cheat gains. Pretty neat structure shows up. #py5 animation code: github.com/gereleth/aoc...
0172
Daria @gereleth.bsky.social · 21/12/2024
#AdventOfCode Day 21 - Keypad Conundrum The robots almost broke my brain this morning, this was super hard for some reason. But at least the solution works pretty much instantly. #python solution code: github.com/gereleth/aoc... #py5 animation code github.com/gereleth/aoc...
060
Daria @gereleth.bsky.social · 19/12/2024
#AdventOfCode Day 19 - Linen Layout Some dynamic programming if not dynamic visuals. No idea how to show full input, there's 400 sequences there =).
171
Daria @gereleth.bsky.social · 19/12/2024
I've completed "Linen Layout" - Day 19 - Advent of Code 2024 adventofcode.com/2024/day/19 First I threw together some memoized recursion - worked fine but took 1.7s to complete both parts. That was kinda slow so I looked for ways to speed things up and managed to make it 20x faster!
120
Daria @gereleth.bsky.social · 18/12/2024
#AdventOfCode Day 16 - RAM Run I did a binary search in part 2 in my actual solution but watching how the path rebuilds after every new obstacle is pretty fun too.
2171
Daria @gereleth.bsky.social · 16/12/2024
#AdventOfCode Day 16 - Reindeer Maze Looks full of holes but it is a thorough search. #python solution: github.com/gereleth/aoc... (same priority queue powered search I throw at every optimization problem) #py5 animation code: github.com/gereleth/aoc...
050
Daria @gereleth.bsky.social · 15/12/2024
#AdventOfCode Day 15 - Warehouse Woes box is push robot is move star is win
2120
Daria @gereleth.bsky.social · 14/12/2024
#AdventOfCode Day 14 - Restroom Redoubt Checking density anomalies for fun and profit. I love how the vertical density chart itself sometimes looks like half a christmas tree.
1130
Daria @gereleth.bsky.social · 14/12/2024
#AdventOfCode Day 14 You wait a few hours, then one blink and it's gone 🎄 😄
0151
Reposted by Daria
Julien L. @lvzl.bsky.social · 12/12/2024
Inspired by @gereleth.bsky.social and her very nice visualisations of solutions to #AdventOfCode challenges, I've tried to build my own. This took a while, but here is a first attempt for day 12. I used #pygame to draw the frames and #ffmpeg to build the video.
2143
Daria @gereleth.bsky.social · 12/12/2024
I don't have a good day 12 animation yet because damn, getting a sane ordered contour was much harder than just counting sides. But something finally works even for the crazier shapes like this one. #AdventOfCode
0150
Daria @gereleth.bsky.social · 11/12/2024
I keep seeing recursive solutions to #AdventOfCode day 11 pebble counting. So here's my iterative approach for a change. One simple counter trick to save an astronomical amount of repeated work =). github.com/gereleth/aoc...
from collections import Counter
from typing import Tuple, List
from functools import cache

day_title = "Plutonian Pebbles"


@cache
def blink(stone: int) -> Tuple[int]:
    if stone == 0:
        return (1,)
    s = str(stone)
    if len(s) % 2 == 0:
        n = len(s) // 2
        return (int(s[:n]), int(s[n:]))
    return (stone * 2024,)


def count_stones(stones: List[int], num_blinks: int) -> int:
    counts = Counter(stones)
    for _ in range(num_blinks):
        new_counts = Counter()
        for stone, count in counts.items():
            for new_stone in blink(stone):
                new_counts[new_stone] += count
        counts = new_counts
    return sum(counts.values())


def part1(text_input: str) -> int:
    stones = [int(i) for i in text_input.split()]
    res = count_stones(stones, 25)
    return res


def part2(text_input: str) -> int:
    stones = [int(i) for i in text_input.split()]
    res = count_stones(stones, 75)
    return res
090
Daria @gereleth.bsky.social · 11/12/2024
Who else crashed their IDE with a naive approach to day 11 part 2? =) #AdventOfCode
070
Daria @gereleth.bsky.social · 10/12/2024
#AdventOfCode Day 10 - Hoof It! Made a #py5 animation of the search for hiking trails youtu.be/2kjX5DxUANc Animation source code: github.com/gereleth/aoc...
youtu.be
Advent Of Code 2024 - Day 10 - Hoof It
YouTube video by Daria Vasyukova
1101
Daria @gereleth.bsky.social · 08/12/2024
A #py5 animation of today's nefarious antennas. #AdventOfCode Day 8 - Resonant Collinearity youtu.be/OKk7IBs2s_k Animation source code: github.com/gereleth/aoc...
youtu.be
Advent Of Code 2024 - Day 8 - Resonant Collinearity
YouTube video by Daria Vasyukova
290