A85972.「2020-2021 集训队作业」Old Problem

NOI/NOI+/CTSC

通过率:0%

时间限制:3.00s

内存限制:512MB

题目描述

为参加省选,Moorhsum 必须通过省选选拔。

省选选拔共计 nn 场,第 ii 场的前 aia_i 名获得省选资格。

作为 Moorhsum 的好朋友,Goodeat 想算出如果 Moorhsum 只参加第 ll 场到第 rr 场,且每一场的排名在 [1,x][1,x] 中随机产生,那么他获得省选资格的概率。

但是 Goodeat 太莱了,于是他向你求助。你能帮帮他么?

输入格式

第一行两个数 n,qn, q 代表选拔场数和询问次数

接下来 nn 个数 a1ana_1\sim a_n 每场的名额数

随后 qq 行,每行三个数 l,r,xl, r, x

输出格式

对于每次询问,输出一个小数表示若 Moorhsum 只参加第 ll\simrr 场,且每一场的排名在 [1,x][1,x] 中随机时获得名额的概率。

你的答案只要与标准答案差的绝对值在 10610^{-6} 以内即算正确。

输入输出样例

  • 输入#1

    3 3 
    1 2 3
    1 1 4
    1 2 4
    1 3 4

    输出#1

    0.2500000000
    0.6250000000
    0.9062500000
  • 输入#2

    10 7
    3 7 19 6 8 7 2 3 5 4
    1 4 20
    4 6 23
    5 7 21
    4 10 63
    9 9 56
    3 4 27
    1 10 10000

    输出#2

    0.9806625000
    0.6646667215
    0.6266061980
    0.4417833108
    0.0892857143
    0.7695473251
    0.0063826566

说明/提示

对于 20%20\% 的数据 n,q500n, q \leq 500

对于 40%40\% 的数据 n,q5000n, q \leq 5000

另有 30%30\% 的数据 n,q100000n, q \leq 100000l=1l = 1r=nr = n

对于 100%100\% 的数据 1n,q6000001 \leq n, q \leq 6000001x1091 \leq x \leq 10^91ai1091 \leq a_i \leq 10^91lrn1 \leq l \leq r \leq n

由于 Moorhsum 显然不能稳进省选,数据保证对于任意 iiai<xa_i < x(即 x>max(a1,a2,...,an)x > \max(a_1, a_2, ..., a_n)

首页