CF926H.Endless Roses Most Beautiful

提高+/省选-

通过率:0%

AC君温馨提醒

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

题目描述

Arkady 决定为他的女朋友买玫瑰花。

一家花店有白色、橙色和红色的玫瑰,总共有 nn 朵。Arkady 认为红玫瑰和白玫瑰不适合放在一起,因此他不会购买同时包含红玫瑰和白玫瑰的花束。此外,Arkady 也不会购买所有玫瑰颜色都相同的花束。

Arkady 想要买恰好 kk 朵玫瑰。对于店里的每一朵玫瑰,他都知道它的美丽值和颜色:第 ii 朵玫瑰的美丽值为 bib_{i},颜色为 cic_{i}('W' 表示白玫瑰,'O' 表示橙玫瑰,'R' 表示红玫瑰)。

请计算在满足上述条件的情况下,Arkady 能买到的美丽值总和最大的 kk 朵玫瑰花束的美丽值总和。如果无法组成这样的花束,输出 −1-1。

输入格式

第一行包含两个整数 nn 和 kk(1≤k≤n≤2000001 \leq k \leq n \leq 200000),分别表示玫瑰的总数和 Arkady 想要购买的玫瑰数量。

第二行包含 nn 个整数 b1,b2,…,bnb_{1}, b_{2}, \ldots, b_{n}(1≤bi≤100001 \leq b_{i} \leq 10000),其中 bib_{i} 表示第 ii 朵玫瑰的美丽值。

第三行包含一个长度为 nn 的字符串 cc,由大写英文字母 'W'、'O' 和 'R' 组成,其中 cic_{i} 表示第 ii 朵玫瑰的颜色:'W' 表示白色,'O' 表示橙色,'R' 表示红色。

输出格式

输出满足条件的 kk 朵玫瑰花束的最大美丽值总和。如果无法组成这样的花束,输出 −1-1。

输入输出样例

  • 输入#1

    5 3
    4 3 4 1 6
    RROWW

    输出#1

    11
  • 输入#2

    5 2
    10 20 14 20 11
    RRRRR

    输出#2

    -1
  • 输入#3

    11 5
    5 6 3 2 3 4 7 5 4 5 6
    RWOORWORROW

    输出#3

    28

说明/提示

在第一个样例中,Arkady 想买 33 朵玫瑰。他可以例如买下两朵红玫瑰(它们的编号是 11 和 22,美丽值总和为 77),再加上一朵橙玫瑰(编号为 33,美丽值为 44)。这样花束的美丽值总和为 1111。

在第二个样例中,Arkady 无法买到满足条件的花束,因为所有玫瑰颜色都相同。

由 ChatGPT 4.1 翻译

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

首页