cf 34b
题意
有 n 个数,最多可选择 m 个,使其加和最小
分析
从小到大排序,选择小于 0 的 便能获得最小值
代码
#include <bits/stdc++.h>
using namespace std;
const int N = 110;
int s[N];
int main()
{
int n , m;
scanf("%d %d" , &n , &m);
for(int i = 1 ; i <= n ; i++)
{
scanf("%d" , &s[i]);
}
sort(s + 1 , s + n + 1);
int cnt = 0;
for(int i = 1 ; i <= m && s[i] < 0 ; i++)
{
cnt += s[i];
}
printf("%d" , -cnt);
return 0;
}