Skip Navigation

InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)HE
Posts
1
Comments
240
Joined
2 yr. ago

  • The longer wire (being also thicker) has less resistance and is therefore wasting less power as heat, that's where the Voltage drop is going.

    Sure, most of the time it's fine if you know what you're doing, but that's why it's general wisdom and not a hard rule, like "don't put metal in the microwave", it's said to protect those that have no idea what they're doing/why the saying exists

  • Because you're just sorting integers and in a single pass, the a == b and a > b distinction doesn't actually matter here, so the cmp can very simply be is a|b in rules, no map needed.

    Edit: I realise it would be a sidegrade for your case because of how you did P1, just thought it was an interesting insight, especially for those that did P1 by checking if the input was sorted using the same custom compare.

     go
        
    func solution(input string) (int, int) {
        // rules: ["a|b", ...]
        // updates: [[1, 2, 3, 4], ...]
        var rules, updates = parse(input)
    
        sortFunc := func(a int, b int) int {
            if slices.Contains(rules, strconv.Itoa(a)+"|"+strconv.Itoa(b)) {
                return -1
            }
            return 1
        }
    
        var sumOrdered = 0
        var sumUnordered = 0
        for _, update := range updates {
            if slices.IsSortedFunc(update, sortFunc) {
                sumOrdered += update[len(update)/2]
            } else {
                slices.SortStableFunc(update, sortFunc)
                sumUnordered += update[len(update)/2]
            }
        }
        return sumOrdered, sumUnordered
    }