文章

81

粉丝

2

获赞

494

访问

9.6k

头像
选球问题 题解:
P1683 中南大学机试题
发布于2026年3月22日 15:28
阅读数 45

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;

int main() {
    int n, k;

    while (cin >> n >> k) {
        string s;
        cin >> s;

        sort(s.begin(), s.end());

        int cnt = 0;
        int sum = 0;
        char last = 0;

        for (int i = 0; i < n; i++) {
            if (cnt == 0 || s[i] >= last + 2) {
                sum += s[i] - 'a' + 1;
                last = s[i];
                cnt++;
                if (cnt == k) break;
            }
        }

        if (cnt < k) cout << -1 << endl;
        else cout << sum << endl;
    }

    return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发