2020 ICPC Universidad Nacional de Colombia Programming Contest---D

Posted H-w-H

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2020 ICPC Universidad Nacional de Colombia Programming Contest---D相关的知识,希望对你有一定的参考价值。

D.Dice

题意:

给定 n n n个色子,每个色子有 k k k个面,每个面都有一个数字,数字模 m m m 0 0 0的面出现的概率为 0 0 0,剩下的面出现的的概率相等,每个面在模 m m m下,只有 m m m中情况,我们可以算出一个色子的 m m m个概率。

思路:

a i a_i ai表示 1 1 1个色子丢出的面模 m m m i i i的概率。

b i b_i bi表示 1 1 1个色子丢出的面模 m m m i i i的概率。

则:
{ b 0 = a 0 ∗ a 0 + a 1 ∗ a m − 1 + a 2 ∗ a m − 2 . . . a m − 1 ∗ a 1 b 1 = a 0 ∗ a 1 + a 1 ∗ a 0 + a 2 ∗ a m − 1 . . . a m − 1 ∗ a 2 b 2 = a 0 ∗ a 2 + a 1 ∗ a 1 + a 2 ∗ a 0 . . . a m − 1 ∗ a 3 . . . b m − 1 = a 0 ∗ a m − 1 + a 1 ∗ a m − 2 + a 2 ∗ a m − 3 . . . a m − 1 ∗ a 0 \\left\\{ \\begin{array}{l} b_0=a_0*a_0+a_1*a_{m-1}+a_2*a_{m-2}...a_{m-1}*a_1\\\\ b_1=a_0*a_1+a_1*a_0+a_2*a_{m-1}...a_{m-1}*a_2\\\\ b_2=a_0*a_2+a_1*a_1+a_2*a_0...a_{m-1}*a_3\\\\ ...\\\\ b_{m-1}=a_0*a_{m-1}+a_1*a_{m-2}+a_2*a_{m-3}...a_{m-1}*a_0 \\end{array} \\right. b0=a0a0+a1am1+a2am2...am1a1b1=a0a1+a1a0+a2am1...am1a2b2=a0a2+a1a1+a2a0...am1a3...bm1=a0am1+a1am2+a2am3...am1a0

可以写出矩阵的形式
[ b 0 , b 1 . . . b m − 1 ] = [ a 0 , a 1 . . . a m − 1 ] × [ a 0 a m − 1 ⋯ a 1 a 1 a 0 ⋯ a 2 ⋮ ⋮ ⋱ ⋮ a m − 1 a m − 2 ⋯ a 0 ] T [b_0,b_1...b_{m-1}]=[a_0,a_1...a_{m-1}]\\times \\left[ \\begin{array}{l} a_0&a_{m-1}&\\cdots&a_1\\\\ a_1&a_0&\\cdots&a_2\\\\ \\vdots&\\vdots&\\ddots&\\vdots\\\\ a_{m-1}&a_{m-2}&\\cdots&a_0 \\end{array}\\right]^T [b0,b1...bm1]=[a0,a1...am1]×a0a1am1am1a0am2a1以上是关于2020 ICPC Universidad Nacional de Colombia Programming Contest---D的主要内容,如果未能解决你的问题,请参考以下文章

2020 ICPC Universidad Nacional de Colombia Programming Contest---A

2019 ICPC Universidad Nacional de Colombia Programming Contest

2017 ACM-ICPC, Universidad Nacional de Colombia Programming Contest K - Random Numbers (dfs序 线段树+数论)

FZU ICPC 2020 寒假训练 1

2019-2020 ICPC, NERC, Southern and Volga Russian Regional Contest (Online Mirror, ICPC Rules, Teams

2020 ICPC 上海(部分题解)