Exemple #1
0
from itertools import product

from common import solve, int2bin


def write_memory(addr, value, mask, memory):
    addr = int2bin(addr)
    for i, c in enumerate(mask):
        if c in 'X1':
            addr[i] = c
    c = addr.count('X')
    addr = ''.join(addr).replace("X", "{}")
    for x in product("01", repeat=c):
        memory[addr.format(*x)] = value


print(solve(write_memory))
Exemple #2
0
from math import prod

from common import solve


def solver(string):
    return (str(
        prod(sum(map(int, x.split(' + '))) for x in string.split(' * '))))


print(solve(solver))
Exemple #3
0
from common import solve

print(solve(2))
Exemple #4
0
from common import solve


def at_position(pos1, pos2, char, password):
        return (password[pos1 - 1], password[pos2 - 1]).count(char) == 1


print(solve(validator=at_position))
Exemple #5
0
def main():
    print(solve(store_visited=True))
Exemple #6
0
from common import solve

print(solve(30000000))
Exemple #7
0
from common import solve


def standard(deck1, deck2):
    while len(deck1) and len(deck2):
        card1 = deck1.pop(0)
        card2 = deck2.pop(0)
        if card1 > card2:
            deck1.append(card1)
            deck1.append(card2)
        elif card2 > card1:
            deck2.append(card2)
            deck2.append(card1)


print(solve(game=standard))
Exemple #8
0
#!/usr/bin/env python
import sys
from common import solve

if (len(sys.argv) == 1):
    print("Usage: %s PUZZLE" % sys.argv[0])
    exit(1)

puzzle = sys.argv[1]
print(solve(puzzle, len(puzzle) / 2))
Exemple #9
0
from common import solve


def recursive(deck1, deck2):
    previous = set()
    while len(deck1) and len(deck2):
        if (current := (tuple(deck1), tuple(deck2))) in previous:
            return 1
        else:
            previous.add(current)
            card1 = deck1.pop(0)
            card2 = deck2.pop(0)
            if len(deck1) >= card1 and len(deck2) >= card2:
                winner = recursive(deck1[:card1], deck2[:card2])
            else:
                winner = 1 if card1 > card2 else 2
            if winner == 1:
                deck1.append(card1)
                deck1.append(card2)
            else:
                deck2.append(card2)
                deck2.append(card1)
    return 1 if len(deck1) else 2


print(solve(game=recursive))
Exemple #10
0
from common import solve


def in_range(lower, upper, char, password):
    return lower <= password.count(char) <= upper


print(solve(validator=in_range))
Exemple #11
0
from common import solve

print(solve(slopes=((3, 1), )))
Exemple #12
0
from common import solve

print(solve(2020))
Exemple #13
0
from common import solve

print(solve(4))
Exemple #14
0
from common import solve

print(solve(version=1))
Exemple #15
0
from common import solve

print(solve())
Exemple #16
0
def main():
    print(solve())
Exemple #17
0
from common import solve
print len(str(solve('1113222113', 50)))
Exemple #18
0
from common import solve
solve(min)
Exemple #19
0
from common import solve

print(solve(3))
Exemple #20
0
from common import solve
solve(max)
Exemple #21
0
from common import read_input, solve

prefs = read_input()
prefs['me']  # For the side-effect on defaultdict

print solve(prefs)
Exemple #22
0
from common import solve

print(solve(part_two=True))
Exemple #23
0
from common import solve


def up(pos):
    return pos if pos in (1, 2, 3) else pos - 3


def down(pos):
    return pos if pos in (7, 8, 9) else pos + 3


def left(pos):
    return pos if pos in (1, 4, 7) else pos - 1


def right(pos):
    return pos if pos in (3, 6, 9) else pos + 1


print(solve(up, down, left, right))
Exemple #24
0
from common import solve

print(solve(least_common=True))
Exemple #25
0
from common import solve

print(solve(slopes=((1, 1), (3, 1), (5, 1), (7, 1), (1, 2))))
Exemple #26
0
#!/usr/bin/env python
import sys
from common import solve

if (len(sys.argv) == 1):
    print("Usage: %s PUZZLE" % sys.argv[0])
    exit(1)

print(solve(sys.argv[1], 1))
Exemple #27
0
def trace(u0, forces, torques, params, conditions):
    return solve(eqns, u0, forces, torques, params, conditions)
Exemple #28
0
from common import read_input, solve

print solve(read_input())
Exemple #29
0
#!/usr/bin/env python
import fileinput
from common import solve, difference

puzzle = [map(int, line.split("\t")) for line in fileinput.input()]
print(solve(puzzle, difference))