Balance Beam
Time limit2sMemory limit512 MB
Choose at each beam position a cash value or a fair coin random walk stopped at the ends, maximizing expected payment for every starting position.
- Level
Hard8 of 10
- Topics
- Dynamic programming, Math, Probability, Implementation
- Solved
- No attempts yet
Problem
To save money for a new stall in her barn, Bessie the cow has started performing in the local circus, showing off her remarkable sense of balance as she carefully walks back and forth on an elevated balance beam!
The amount of money Bessie earns in her performance depends on where she ultimately jumps off the beam. The beam has positions labeled from left to right. If Bessie ever reaches or , she falls off one of the ends of the beam and sadly receives no payment.
If Bessie is at a given position , she can do either of the following:
- Flip a coin. If she sees tails, she goes to position , and if she sees heads, she goes to position (that is, probability of either occurrence).
- Jump off the beam and receive payment of .
Bessie realizes that she may not be able to guarantee any particular payment outcome, since her movement is governed by random coin flips. However, based on the location where she starts, she wants to determine what her expected payment will be if she makes an optimal sequence of decisions ("optimal" meaning that the decisions lead to the highest possible expected payment). For example, if her strategy earns her payment of with probability , with probability , or with probability , then her expected payment will be the weighted average .
Input
The first line of input contains (). Each of the remaining lines contains .
Output
Output lines. On line , print times the expected value of payment if Bessie starts at position and plays optimally, rounded down to the nearest integer.