POKER RUN
An 8-round poker puzzle where the input reveals everything.
Every draw and every shop offer is written in the input, so there is no luck, only planning. Play hands to beat targets that double from 300 to 38,400, spend your winnings on modifiers and deck edits, and see how far one run can go. Play it by hand in the browser, or write a solver and climb the leaderboard.
Try a hand · seed 7, round 1
real rules, real numbersThe whole game in three minutes
The rules, a round played out card by card, the shop, and how your score is counted.
Alone, against a bot, or online with friends
Play alone, race a bot, or open a room online and share its code: friends join from their own devices. In every mode all players get the same deal, and each player's moves are a valid output file for that seed.
Solo the contest's game
Just you and the deck: eight rounds, every draw known in advance. The default mode.
vs Bot
Race a computer player (Easy, Normal or Hard) on the same deal, revealed round by round.
Online race 2 to 4 players
Make a room, share its code, and everyone plays the same deal at once on their own device. Rounds are revealed as you go; results are saved to your account.
Online draft
2 to 4 players (bots can fill seats) take turns and share one shop: a modifier someone owns can't be bought by the others. Lowest total shops first.
Classic or Balanced rules
Pick with the Rules switch in the game's top bar. Same inputs, same targets; only the scoring and the shop change.
The default, and the only ruleset the contest's judge uses.
Full House toned down, Flush and Three of a Kind up, cheaper deck edits and stronger niche modifiers. Bots can use it locally with --rules balanced.
Read it all, then plan the perfect run
One test is one run of eight rounds with a 52-card deck. Your program reads the test and prints its moves; the judge replays them with the same simulator the browser game uses.
- 1
Read the input
The input lists the draw order of all eight rounds and every shop's offer queue. Once you've read it, nothing is random: you know exactly which card comes next.
- 2
Play and discard
Each round you hold 8 cards and get 4 plays and 3 discards. Discard to dig for the cards you know are coming, then play the strongest hand: on seed 7, four discards turn a 15-point high card into a 316-point straight.
- 3
Shop between rounds
Clearing a round pays money. Spend it on up to 5 modifiers from a window of three offers, level up hand types, or remove, paint and promote cards. ×2 and ×3 effects stack.
- 4
Score across 8 rounds
Targets double every round, from 300 to 38,400. Miss one and the run ends. Every play's points count toward your score, including the round you fail.
- 5
Submit a solver
Upload one Python file. The judge runs it on every test in a sandbox and checks each output. Public runs on seeds 1–10 give feedback; full runs on hidden seeds count for the leaderboard.
Ranked relative to the best
On each hidden test you earn 1,000,000 × your score ÷ the best score anyone got on that test. Your total is the sum over all hidden tests, and the leaderboard keeps each player's best full submission.
Your program reads one test on standard input and prints the number of moves, then one move per line:
2 discard 26 16 17 45 play 33 8 9 23 50
Ready to deal?
Warm up by hand, then teach a program to do it better.