#codefestivalfinalh. [code_festival_final_h]部屋割り

[code_festival_final_h]部屋割り

问题描述

高桥君们在合宿中,有 NN 个人,住在 KK 个房间里。

高桥君们准备了一个写有从 11NN 的数字的彩票,然后按照编号从小到大的顺序决定每个人住的房间。

高桥君们的团队中有两种人,一种喜欢安静的房间,一种喜欢热闹的房间。

喜欢安静的人倾向于选择人数最少的房间。根据之前的房间分配情况,他们会选择人数最少的房间住宿。

喜欢热闹的人倾向于选择人数最多的房间。根据之前的房间分配情况,他们会选择人数最多的房间住宿。

无论是哪种类型的人,如果有多个房间符合条件,他们会以相等的概率从符合条件的房间中选择一个房间住宿。

高桥君希望在抽签结束后,在实际分配房间前,预测每个参与者与多少人住在同一个房间。

请计算每个参与者预计与多少人住在同一个房间。注意,计算时应包括自己在内。


输入

输入以以下格式从标准输入中给出:

NN KK SS

  • 第一行包含两个整数 N(1N200,000)N (1 ≤ N ≤ 200,000)K(1K200,000)K (1 ≤ K ≤ 200,000),表示参与合宿的人数和房间数。两个数之间用空格分隔。
  • 第二行包含一个长度为 NN 的字符串 S(S=N)S(|S| = N),表示参与合宿者的类型信息。
  • SS 由仅包含 01 的字符组成,第 ii 个字符 SiS_i 表示第 ii 个人的类型。如果 SiS_i0,表示第 ii 个人喜欢安静的房间;如果 SiS_i1,表示第 ii 个人喜欢热闹的房间。

输出

对每个参与者,分别在 NN 行中输出与他住在同一个房间的人数的期望值。

ii 行输出第 ii 个彩票编号的参与者住在同一个房间的人数的期望值。

注意,允许的误差范围是相对误差或绝对误差不超过 10610^{-6}


输入示例1


7 3
1000011

输出示例1


2.33333333333333
2.33333333333333
2.33333333333333
3
3
4
4

第 1、2、3 号参与者会等概率地分配到 1、2、4 人房间,因此期望值是 7/37/3

第 4、5 号参与者会等概率地分配到 2、4 人房间,因此期望值是 33

第 6、7 号参与者会分配到 4 人房间,因此期望值是 44


输入示例2


12 5
000000101101

输出示例2


2.4
2.4
2.4
2.4
2.4
6
6
2
6
6
2
6