AT_relay2018_f.バス旅行

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

有 N+1N+1 个公交车站,编号从 00 到 NN。从车站 ii(其中 0≤i≤N−10 \le i \le N-1)有一班开往车站 i+1i+1 的公交车,行程需要 ti+1t_{i+1} 分钟。

此外,给定一个正整数 kk。对于每一个车站 ii(0≤i≤N−10 \le i \le N-1),每隔一个时间段,公交车在特定时间内发车。具体来说,在 00 分到 k−1k-1 分之间会随即选择某个整数时间发车一次,接着在 kk 到 2k−12k-1 分之间再发车一次,以此类推。每个时间段内,选择发车的分钟数是等概率随机的,并且对于每个车站来说是独立的。

Snuke 同学在时刻 00 分从车站 00 出发,并依次搭乘公交,目标是到达车站 NN。他可以在到达一个站点的瞬间立刻上下一班车。

请计算 Snuke 同学到达车站 NN 所需时间的期望值。

输入格式

输入通过标准输入,格式如下:

N k t1 t2 … tNN\ k\ t_1\ t_2\ \ldots\ t_N

输出格式

输出 Snuke 同学到达车站 NN 消耗时间的期望值。要求绝对误差或相对误差不超过 10−910^{-9}。

输入输出样例

  • 输入#1

    2 2
    2
    1

    输出#1

    4.125000000000
  • 输入#2

    6 4
    4
    6
    4
    2
    1
    7

    输出#2

    34.524398803711

说明/提示

  • 1≤N≤1051 \le N \le 10^5
  • 1≤k≤3001 \le k \le 300
  • 1≤ti≤1091 \le t_i \le 10^9
  • 所有输入值均为整数

样例解释

  • 在时刻 00 分,从车站 00 发车,时刻 22 分到达车站 11,并立刻在时刻 22 分从车站 11 发车,时刻 33 分到达车站 22。这种情况发生的概率为 1/41/4。
  • 同样在时刻 00 分发车,时刻 22 分到达车站 11,但在时刻 33 分才从车站 11 发车,时刻 44 分到达车站 22。这种情况发生的概率也为 1/41/4。
  • 还有可能在时刻 11 分发车,时刻 33 分到达车站 11,并立即继续,在时刻 33 分从车站 11 发车,时刻 44 分到达车站 22,这种情况的概率为 1/41/4。
  • 另一种情况是,在时刻 11 分发车,时刻 33 分到达车站 11,但要等待到时刻 44 分才能从车站 11 发车,到时刻 55 分时到达车站 22,这种情况的概率为 1/81/8。
  • 再有可能时刻 11 分发车,时刻 33 分到达车站 11,但再等到时刻 55 分更晚发车,然后在时刻 66 分到达车站 22,概率为 1/81/8。

因此,求得的期望值为 3×(1/4)+4×(1/4)+4×(1/4)+5×(1/8)+6×(1/8)=33/83 \times (1/4) + 4 \times (1/4) + 4 \times (1/4) + 5 \times (1/8) + 6 \times (1/8) = 33/8。

本翻译由 AI 自动生成

输入解题思路,AI测评打分。不知道怎么写?

首页