美文网首页
CodeFoeces-1011A

CodeFoeces-1011A

作者: ss5smi | 来源:发表于2018-08-01 22:37 被阅读0次

题目

原题链接:A. Stages

题意

给n个字母,最少选k个。要求每次选的必须必前一个ascii码至少大2。问最小的字母ascii码累计值。若无法达成则输出-1。

代码

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,k;
    char w[50];
    cin>>n>>k;
    cin>>w;
    sort(w,w+n);
    int minn = 0,tmp = 0;
    for(int i=0;i<n && k>=1;i++){
        if(w[i] > tmp+1){
            minn+=w[i]-'a'+1;
            tmp = w[i];
            k--;
        }
    }
    if(k>=1){
        printf("-1\n");
    }else{
        printf("%d\n",minn);
    }
    return 0;
}

相关文章

  • CodeFoeces-1011A

    题目 原题链接:A. Stages 题意 给n个字母,最少选k个。要求每次选的必须必前一个ascii码至少大2。问...

网友评论

      本文标题:CodeFoeces-1011A

      本文链接:https://www.haomeiwen.com/subject/inqdvftx.html