30 November 2019

Codeforces Round #603 (Div. 2) Postmortem

Link to contest.

What went well
  • I got ABCD.
  • Expanding on getting ABCD, I got C and D fairly quickly, at T+36min and T+48min respectively. (Then again, D was not particularly hard, as evidenced by its 1500 rating).
What went wrong
  • I didn't get A until T+1h30 and two wrong tries.
  • I did not upload anything for E because my fastest solution sketches were O(NlogN), which I thought were too slow for N = 1,000,000. Turns out that O(NlogN) and a good constant factor is fine for such large N.
  • I also misread E: I thought that the cursor can be moved to the left of the starting position, but the problem clearly says that it can't.
Where I got lucky
  • Implementing C and D went very smoothly, taking 12min from end (open problem statement) to end (pretests passed).
  • E felt approachable.

28 November 2019

Educational Codeforces Round 77 (Div. 2) Postmortem

Link to contest.

What went well
  • I didn't give up.
  • I quickly figured out the approach for D, which was binary searching for the answer.
What went wrong
  • I got A four (!!!) minutes before the contest ended (at T + 01h56).
  • I didn't get D.
  • I incurred a lot of penalty from wrong-answering B (twice) and C (once).
  • I had no milk for my pre-contest coffee.
  • I felt pretty awful waking up at 0530 to do the contest.
Where I got lucky
  •  The contest was hard for everyone else, so I only lost less than 50 elo for my poor performance.

23 November 2019

A Taste of Quantitative Trading

Think you're interested in quantitative trading? Try your hand at this problem, courtesy of E6 Trading:
Two card players have hand strengths distributed independently & uniformly over [0, 1] and are playing for an existing pot of $100. Player 1 can check or bet $100. If Player 1 checks, the player with the stronger hand wins the pot. If Player 1 bets, Player 2 can call the bet or fold. Given both players are risk-neutral paperclip expectation maximizers, how does each play?

20 November 2019

Codeforces Round #597 (Div. 2) Postmortem

Link to contest.

What went well
  • I solved C and D relatively quickly. 
  • I was pretty close on E1.
What went wrong
  • I didn't get B.
  • B had more than 2 errata.
  • I didn't read E2 before I started to think about E1. This time, E2 was simply the same problem, but with higher limits.
Where I got lucky
  • Fewer people than usual solved D, so I managed to get rank #401 (top 4%) with just ACD. Normally ranking that high needs a reasonably fast ABCD.