君の名は

君の名は

题面

一天,小明获得了一个名单,他想看看自己的名字和其他人的名字有多相似。(注意这里小明的名字并不是 小明 ,小明只是一个 称呼
相似的定义如下:
若小明名字长为\(l\),有\(x\)个人的名字的前\(a\)个字符和小明的名字的前\(a\)个字符相同(注意了,小明的名字不参与比较),则相似度\(v_a= \frac{a}{l}\times x \)。
众所周知,小明是虚拟世界中掌握一身技能的人,所以他会换马甲。但是他知道换太多了他会被识破,所以它最多换\(q\)次,请输出小明没换马甲时和每次换完马甲后的相似度之和(即\(v_1\)..\(v_l\)的和)

输入格式

第一行一个数\(n\)
第二行一个字符串,表示小明没换马甲前的的名字
接下来\(n\)行每行一个字符串,表示各个人的名字
接下来一个数\(q\)表示小明换马甲的次数
接下来\(q\)行每行一个字符串\(q_i\)表示小明换的第\(i\)个马甲

输出格式

\(q+1\)行,每行一个浮点数表示相似度之和(保留两位小数)
第一行输出小明没换马甲前的的名字的相似度之和,接下来\(q\)行按照输入顺序依次输出每个小明的马甲对应的相似度之和

输入样例

10
drbge
v
thzx
oxmok
pwwdq
u
sag
de
drr
vl
yyhw
1
z

输出样例

0.80
0.00

数据范围及限制

共11个测试点,第一个测试点为样例,不计分,其测试点编号为0。
数据范围请自行根据以下方法计算,其中的\(id\)表示测试点编号
对于奇数测试点编号:
字符串长度\(\le \lfloor \frac{id}{2}+1 \rfloor \times 5\)
对于偶数测试点编号,字符串长度均\(\le 50\)
对于所有测试点编号,设\(n_i\)表示第\(i\)个测试点的字符串最大数量:
\(n_1=1\)
若\(i\)不整除2,则\(n_i=n_{i-1}\times 10\),否则\(n_i=n_{i-1}\)(此处\(i\)的范围为\(1<i \le 10\))。
字符串只包含小写字母
\(0 \le q \le 10n\)
测试点0~9时空限制为1s/512MB,测试点10时空限制为1s/1024MB

信息

难度
8
分类
(无)
标签
(无)
递交数
188
已通过
20
通过率
11%
上传者

相关

在下列比赛中:

ACM模拟赛