|
|
f751b3b8d5
|
Solve 2024:4 p1-2 "Ceres Search"
Not gonna lie, This is not my gig skillwise. I had
much fun though!
A matrix would most likely make the code more
readable.
I relied massively on test cases here, so I share
them here instead of in the source code:
assert 1 == solve("""
X.....
.M....
..A...
...S..
..X...
""".strip())[0]
assert 2 == solve("""
XS....
.MA...
..AM..
...SX.
..X...
""".strip())[0]
assert 2 == solve("""
..S......
...A.....
....M....
.....X...
..X...M..
.......A.
........S
""".strip())[0]
assert 4 == solve("""
X.SS
M.AA
A.MM
S.XX
...M
...A
...S
""".strip())[0]
assert 4 == solve("""
...X...
...M...
.X.A...
XMASAMX
.A.....
.S.....
""".strip())[0]
assert 1 == solve("""
....X
...M.
..A..
.S...
""".strip())[0]
assert 2 == solve("""
...SX
..AM.
.MA..
XS...
""".strip())[0]
assert 2 == solve("""
......X
.....M.
....A..
...S...
..A....
.M.....
X......
""".strip())[0]
assert 1 == solve("""
M.S
.A.
M.S
""".strip())[1]
assert 1 == solve("""
M.M
.A.
S.S
""".strip())[1]
assert 1 == solve("""
S.M
.A.
S.M
""".strip())[1]
assert 1 == solve("""
S.S
.A.
M.M
""".strip())[1]
assert 1 == solve("""
S.S
.A.
M.M
""".strip())[1]
assert 1 == solve("""
.A.
M.M
.A.
S.S
""".strip())[1]
assert 1 == solve("""
M.M.
.A.A
S.S.
""".strip())[1]
assert 1 == solve("""
M.M
.A.
S.S
.A.
""".strip())[1]
assert 1 == solve("""
.M.M
A.A.
.S.S
""".strip())[1]
|
2025-01-05 00:06:18 +01:00 |
|