#P11849. [TOIP 2023] 裁員風暴

    ID: 11496 远端评测题 1000ms 512MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>二分2023双指针 two-pointer台湾

[TOIP 2023] 裁員風暴

Description

孙执行官任职于美味蛋糕股份有限公司,由于今年财报未达预期,股东寄了公开信呼吁公司削减成本,孙执行官决定让公司部分伙伴"走自己的路"。

孙执行官列出 nn 个公司目标,并请员工们各自从 nn 个公司目标挑选 11 个或 22 个他们认为最重要的目标。做出相同选择的员工会被分类到同一个小组。已知每种可能的目标组合都至少有一位员工选择,可以计算出恰好选择 11 个目标的小组有 nn 组,恰好选择 22 个目标的小组有 n(n1)2\frac{n(n-1)}{2} 组,合计共有 n+n(n1)2=n(n+1)2n + \frac{n(n-1)}{2} = \frac{n(n+1)}{2} 个小组。

通过 AI 大数据分析,每个公司目标都被 AI 赋予一个权重,这里用 wiw_i 表示第 ii 个公司目标的权重。我们可以用一个 0101-序列 yyy1,y2,,yny_1, y_2, \cdots, y_n 来表示一个小组所选择的目标(选择第 ii 个目标则 yi=1y_i = 1,否则 yi=0y_i = 0)。AI 定义裁减指数为:

$$\left( \dfrac{\displaystyle \sum_{i=1}^{n}w_i\times y_i}{\displaystyle \sum_{j=1}^{n} y_j} \right)$$

孙执行官决定将所有小组的裁减指数排名,属于裁减指数前 kk 大小组的员工将被开除。

请你帮助孙执行官找出排序后第 kk 大的裁减指数。

例如:当 n=3n=3k=4k=4w1=5,w2=2,w3=3w_1=5, w_2=-2, w_3=3 时,共有 3(3+1)2=6\dfrac{3(3+1)}{2} = 6 个小组,各小组裁减指数如下表:

y1y_1 y2y_2 y3y_3 裁减指数
00 00 11 (0+0+3)/(0+0+1)=3(0+0+3)/(0+0+1) = 3
11 00 (02+0)/(0+1+0)=2(0-2+0)/(0+1+0) =-2
11 (02+3)/(0+1+1)=0.5(0-2+3)/(0+1+1)=0.5
11 00 00 (5+0+0)/(1+0+0)=5(5+0+0)/(1+0+0) = 5
11 (5+0+3)/(1+0+1)=4(5+0+3)/(1+0+1) = 4
11 00 (52+0)/(1+1+0)=1.5(5-2+0)/(1+1+0)=1.5

裁减指数排序后为 2,0.5,1.5,3,4,5-2, 0.5, 1.5, 3, 4, 5,第 44 大的值为 1.51.5。(备注:若第 kk 大与第 k+1k+1 大的裁减指数相同,孙执行官会另行决定裁员名单,不需要替他担心)

Input Format

nn kk
w1w_1 w2w_2 \cdots wnw_n

  • nn 表示公司目标数量
  • kk 表示需要查询的排名
  • wiw_i 表示第 ii 个目标的权重

Output Format

pp
qq

  • pq\dfrac{p}{q} 表示第 kk 大的裁减指数
  • pp 必须为整数
  • qq 必须为正整数
  • p|p|qq 必须互质
3 4
5 -2 3
3
2
3 3
5 -2 3
3
1
9 45
5 -1 2 -3 6 -9 7 3 2
-9
1

Hint

测试数据限制

  • 1n2×1051 \le n \le 2\times 10^5
  • 1kn(n+1)21 \le k \le \dfrac{n(n+1)}{2}
  • 109wi109-{10}^9 \le w_i \le {10}^9
  • 所有输入均为整数

评分说明

本题共有六个子任务,限制条件如下。每个子任务需通过全部测试数据方可得分。

子任务 分数 额外限制
1 5 n20n \le 20
2 n104n \le 10^4k2×105k \le 2\times 10^5
3 n104n \le 10^4
4 40 k2×105k \le 2\times 10^5
5 14 100wi100-100 \le w_i \le 100
6 31 无额外限制