Cesar 和 Raul 喜欢打赌,也喜欢美食,且不分先后。他们想去一家新开的高档餐厅,于是决定打个赌——他们要玩一个游戏,输的人请客吃饭。
他们有一个装有 $N$ 个球的盒子。每个球上都有一个 $1$ 到 $N$ 之间的不同数字。游戏按以下步骤进行:
- 首先,每个人从 $1$ 到 $N$ 中选择 $C$ 个不同的数字,并写在一张单独的卡片上。
- 在每一轮中,从盒子中均匀随机地抽取 $D$ 个球。Cesar 和 Raul 标记出出现在各自卡片上的球的编号。然后将这 $D$ 个球放回盒子中。
- 当一名玩家能够标记出他所选的所有数字时,游戏结束。该玩家获胜。如果两名玩家同时完成,则为平局,他们将平摊晚餐费用。
他们非常渴望去尝试这家新餐厅,现在他们想知道:游戏会持续多少轮?
任务
给定球的总数 $N$,每一轮从盒子中抽取的球数 $D$,以及他们卡片上的数字个数 $C$ 和他们各自写下的数字,求游戏持续轮数的期望值。
输入格式
输入的第一行包含三个空格分隔的整数:$N$,$D$ 和 $C$。接下来的两行,每行包含 $C$ 个空格分隔的整数,分别表示 Cesar 和 Raul 写下的数字。
数据范围
$1 \le N \le 50$ $1 \le D \le \min(10, N)$ $1 \le C \le \min(10, N)$
输出格式
输出游戏的期望轮数。如果结果的绝对误差不超过 $10^{-3}$,则视为正确。
样例
输入格式 1
2 1 1 1 2
输出格式 1
1.00000
说明
共有 2 个球。Cesar 选了数字 1,Raul 选了数字 2。在第一轮中,要么抽到数字 1,要么抽到数字 2,因此其中一人会立即获胜。
输入格式 2
30 5 10 2 3 5 7 11 13 17 19 23 29 20 18 16 14 12 10 8 6 4 2
输出格式 2
13.30378