#P17048. [NWERC 2021] Lucky Shirt

[NWERC 2021] Lucky Shirt

背景

译自 Northwestern Europe Regional Contest (NWERC) 2021 Problem L。

原题许可协议为 CC BY-SA。

题目描述

你是一名忙乱的竞技程序员,通过参加各种编程比赛收集了大量 T 恤。事实上,你的 T 恤多到你现在已经只穿这些 T 恤了。你把它们整齐地叠成一大摞,放在超大的衣柜里。每天早晨,你都会拿走这摞衣服最上面的那件 T 恤来穿。一天结束时,你把这件 T 恤扔进洗衣篮。

为了保持干净 T 恤的供应,你有时也会在晚上洗衣服,清洗洗衣篮里的所有 T 恤(包括当天穿过的那件)。不过洗衣并不遵循什么整齐的日程;两次洗衣之间相隔的天数是在 11(此时你只会洗一件 T 恤)到你拥有的 T 恤总数之间均匀随机选取的一个整数。洗完衣服后,你会把这些衣服以均匀随机的顺序放回衣服堆顶部。

现在是一次成功编程比赛后的夜晚,你决定把这次比赛拿到的 T 恤从今往后当作幸运衫。你想知道什么时候能再次穿上它,并用它带来的好运幻想来娱乐自己。你刚刚洗完衣服,并把所有 T 恤放回了衣服堆。已知当前幸运衫在衣服堆中的位置,那么再经过 kk 次洗衣周期后,幸运衫位置的期望是多少?

输入格式

输入包含:

  • 一行三个整数 nn1n1061 \leq n \leq 10^6)、ii1in1 \leq i \leq n)和 kk1k1061 \leq k \leq 10^6),分别表示你拥有的 T 恤数量、幸运衫从顶部开始数的位置,以及洗衣周期数。

输出格式

输出 kk 次洗衣周期后幸运衫位置的期望值。答案的绝对误差或相对误差至多为 10610^{-6}

3 2 2
1.833333333
5 1 1
2.0
10 7 100
5.499986719

提示

【数据规模与约定】

对于所有数据,1n1061 \leq n \leq 10^61in1 \leq i \leq n1k1061 \leq k \leq 10^6;答案允许绝对误差或相对误差不超过 10610^{-6}