HDU 5777 domino

http://acm.hdu.edu.cn/showproblem.php?pid=5777
不用考虑方向,较大的空一定会作为起点,由他们推到剩下的骨牌,所有最后的骨牌都为1。
排序,前n-k项较小的数相加,再加n即可。

#include<algorithm>
#include <iostream>
#include  <cstring>
#include   <cstdio>
using namespace std;
int a[100005];
int main(){
    int T,n,k;
    long long ans;
    scanf("%d",&T);
    while(T--){
        scanf("%d%d",&n,&k);
        for(int i=0;i<n-1;i++){
            scanf("%d",&a[i]);
        }
        sort(a,a+n-1);
        ans=0;
        for(int i=0;i<n-k;i++){
            ans+=a[i];
        }
        ans+=n;
        printf("%I64d\n",ans);
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/lxworld123/article/details/52078908