CF926H.Endless Roses Most Beautiful
提高+/省选-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Arkady 决定为他的女朋友买玫瑰花。
一家花店有白色、橙色和红色的玫瑰,总共有 n 朵。Arkady 认为红玫瑰和白玫瑰不适合放在一起,因此他不会购买同时包含红玫瑰和白玫瑰的花束。此外,Arkady 也不会购买所有玫瑰颜色都相同的花束。
Arkady 想要买恰好 k 朵玫瑰。对于店里的每一朵玫瑰,他都知道它的美丽值和颜色:第 i 朵玫瑰的美丽值为 bi,颜色为 ci('W' 表示白玫瑰,'O' 表示橙玫瑰,'R' 表示红玫瑰)。
请计算在满足上述条件的情况下,Arkady 能买到的美丽值总和最大的 k 朵玫瑰花束的美丽值总和。如果无法组成这样的花束,输出 −1。
输入格式
第一行包含两个整数 n 和 k(1≤k≤n≤200000),分别表示玫瑰的总数和 Arkady 想要购买的玫瑰数量。
第二行包含 n 个整数 b1,b2,…,bn(1≤bi≤10000),其中 bi 表示第 i 朵玫瑰的美丽值。
第三行包含一个长度为 n 的字符串 c,由大写英文字母 'W'、'O' 和 'R' 组成,其中 ci 表示第 i 朵玫瑰的颜色:'W' 表示白色,'O' 表示橙色,'R' 表示红色。
输出格式
输出满足条件的 k 朵玫瑰花束的最大美丽值总和。如果无法组成这样的花束,输出 −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 想买 3 朵玫瑰。他可以例如买下两朵红玫瑰(它们的编号是 1 和 2,美丽值总和为 7),再加上一朵橙玫瑰(编号为 3,美丽值为 4)。这样花束的美丽值总和为 11。
在第二个样例中,Arkady 无法买到满足条件的花束,因为所有玫瑰颜色都相同。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?