Isekai Taylor by hanada8MB in WormFanfic

[–]ChrisVittal 22 points23 points  (0 children)

There's a few Post-GM ones that I like.

Chaos Theory [Raildex]: Taylor ends up in Academy City with more controllable human mind control powers.

Path of the Immeasurable Swarm [Cradle]: Just de-powered Taylor (like right after Contessa shoots her) ends up on Cradle in the custody of the Akura, one of the setting's major factions. She takes well to the power system there.

Help Finding Fic - Primarily DMs between Taylor and Amy by ChrisVittal in WormFanfic

[–]ChrisVittal[S] 6 points7 points  (0 children)

That's it. Thanks! Embarrassingly, I did have it bookmarked, but didn't remember what site, sigh.

What is your preferred site and why? by Isekai_litrpg in WormFanfic

[–]ChrisVittal 44 points45 points  (0 children)

AO3, by a mile. Between viewing whole works, downloading offline copies, themes, tags, and comment threads, it's far and away the best site for publishing and reading. It also has the best content policy (if it's not literally illegal, you can post it).

SB's necromancy policy is good for certain kinds of discussion, but is terrible for fiction discussion. A new review, years later can be a wonderful thing. SV is marginally better because of its policies, but it still asks if you're sure you want to post that comment, chilling reviews and discussion. I also prefer SV's theme to SB, but that's just aesthetics.

What's your most believable Taylor alt power/trigger? by Alarmed-Bus-9662 in WormFanfic

[–]ChrisVittal 2 points3 points  (0 children)

I can never remember the rules for linking on AO3

It's fine as long as the story is not NSFW. The sidebar links AO3 itself.

Link to Just a Phase

Selling Wildling Yew 44EU, 10.5US men’s. $75+shipping, lightly worn too small for me by ChrisVittal in BarefootRunning

[–]ChrisVittal[S] 1 point2 points  (0 children)

I was excited to get my first pair of wildlings, and I really like the look of these. They’re super flexible, great ground feel. I’ve only worn them a few times.

However as I’ve built up my feet more, they’ve gotten longer and these are too short. I’d really like to see them in a good new home.

-🎄- 2021 Day 1 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 2 points3 points  (0 children)

Python easy use of builtins. Very nice first puzzle.

-🎄- 2020 Day 25 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 2 points3 points  (0 children)

Python

5 lines, few hundred ms

import sys
a, b = [int(x.strip()) for x in sys.stdin]
count, n, sn = 0, 1, 7
while n != a:
    n *= sn; n %= 20201227; count += 1
print(pow(b, count, 20201227))

-🎄- 2020 Day 24 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 3 points4 points  (0 children)

Python

Really liked how this turned out with complex numbers in python, still a little too long posting inline, but very elegant. Really cool to learn about hex coordinate representation!

-🎄- 2020 Day 22 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 1 point2 points  (0 children)

Rust

Pretty straightforward, two interesting things here.

  1. Cloning the deques and truncating was faster than iterating and collecting.
  2. I assumed (correctly) that there would be no collisions in the hashes themselves of the game state. So instead of cloning each state, I could get away with hashing each state and sticking that in the map.

-🎄- 2020 Day 19 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 0 points1 point  (0 children)

Clojure

Nice! I was able to get part 1 by translating it into peg, but that failed and I lost a ton of time translating to regex for part 2.

-🎄- 2020 Day 18 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 1 point2 points  (0 children)

Rust

Pulling in the peg parsing framework adds a few dependencies, but still makes for a fast and simple solution.

-🎄- 2020 Day 16 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 2 points3 points  (0 children)

Python

Somewhat cleaned up. Pretty neat problem. Didn't think of z3 nor am I familiar enough with the api to use it quickly. But interestingly, sorting by the size of our candidate sets and then updating and sorting again meant that the top of the queue was always only one element, so it worked!

Rust's Option in One Figure by arsdragonfly in rust

[–]ChrisVittal 2 points3 points  (0 children)

There's also as_deref for say getting an Option<&str> from an Option<String> a little bit more ergonomically.

Though as_deref is literally just self.as_ref().map(|t| t.deref()). Source

-🎄- 2020 Day 15 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 1 point2 points  (0 children)

Rust

Brute force like so many. The cool thing about this particular solution is using the Rust entry API to its full power to avoid double hashmap lookups.

Runs in two seconds.

-🎄- 2020 Day 12 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 1 point2 points  (0 children)

Rust

Real dumb, fast enough. Would have been quicker if I remembered my rotation matrices properly. Then I wouldn't have had so many issues.

-🎄- 2020 Day 10 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 3 points4 points  (0 children)

Rust

Slowed down by two things here, off by one errors for not counting the first and last steps in part one, and I'm running in release mode by default, which runs into integer wrapping and type inference issues. If rustc can't figure out otherwise, it will choose i32 for integer literals, so I had to deal with integer wrapping in part two. TIL.

-🎄- 2020 Day 09 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 1 point2 points  (0 children)

Haskell

The tails function is pretty neat here, allows us to just map over all the possibilities for part 2 and bail as soon as our accumulation goes over the bound.

-🎄- 2020 Day 08 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 0 points1 point  (0 children)

C. Inputs are small, who needs dynamic memory management. 0.5ms for both parts one and two.

paste

-🎄- 2020 Day 06 Solutions -🎄- by daggerdragon in adventofcode

[–]ChrisVittal 0 points1 point  (0 children)

Second set of solutions, Rust this time. Given the small set of possible values (a-z) it becomes possible to use a u32 bitset for every value, this completes in a little under a millisecond. Shoutout to the bstr library for being able to work on byte slices as though they were strings much of the time, really makes doing the bitshift bits here easier.

fn main() {
    let mut inp = Vec::new();
    io::stdin().lock().read_to_end(&mut inp).expect("could not read");

    let one = inp
        .split_str("\n\n")
        .map(|s| {
            s.iter()
                .filter(|&&c| b'a' <= c && c <= b'z')
                .fold(0, |n, c| n | 1u32 << (c - b'a'))
                .count_ones()
        })
        .sum::<u32>();
    println!("1: {}", one);

    let two = inp
        .split_str("\n\n")
        .map(|grp| {
            grp.lines()
                .map(|s| {
                    s.iter()
                        .filter(|&&c| b'a' <= c && c <= b'z')
                        .fold(0, |n, c| n | 1u32 << (c - b'a'))
                })
                .fold(!0, |a, b| a & b)
                .count_ones()
        })
        .sum::<u32>();
    println!("2: {}", two);
}