看起来 UOJ 正在举办十周年庆典!只要通过完成挑战,收集到宝贵的比特,就可以兑换奖品!
其中一项挑战是吃十周年大蛋糕!蛋糕有
作为挑战者,主办方初始会将第
- 吃掉你已有的最大的一层蛋糕,假设吃掉的这层蛋糕的大小为
。 - 如果主办方有至少
层蛋糕,主办方会按照顺序,将接下来的 层蛋糕 转交 给你。 - 否则如果主办方的蛋糕不足
层,只有 层,那么主办方会将剩余的蛋糕全部 转交 给你,并补偿你 个比特。
似乎如果这样,那么所有的挑战者都可以吃到所有的蛋糕,并获得一样的比特!真是其乐融融!但是谁都没有注意到,一只爱吃蛋糕的小老鼠,也偷偷溜进了庆典!
由于这只小老鼠过于喜欢吃蛋糕,每当主办方想要将至少一层蛋糕 转交 给你的时候,这只小老鼠都会突然出现并随机抢走其中的一块即将 转交 给你的蛋糕!
为了挑战最终谜题,现在你作为挑战者想知道,你在这次游戏中期望能获得多少个比特呢?答案对
输入格式
第一行输入一个正整数
第二行输入
输出格式
一行一个整数,表示答案对
样例一
input
3 1 1 1
output
0
explanation
在你吃完第一层蛋糕后,当主办方将第二层蛋糕转交给你的过程中,小老鼠偷走了第二层蛋糕,因此你无法吃完所有蛋糕,也无法获得比特。
样例二
input
5 3 3 2 1 1
output
3
explanation
在你吃完第一层蛋糕后,主办方将第
样例三
input
18 5 3 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1
output
199648871
样例四~八
见附件下载。
限制与约定
对于所有数据,保证
子任务编号 | 分值 | ||
---|---|---|---|
时间限制:
空间限制: