题目
原题链接:A. Vanya and Cards
题意
有n张卡片,每张的绝对值不超过k。现在要将n张卡的和变为0,问最少还需要几张卡。
每次取能去的最大值的卡片。
代码
#include<bits/stdc++.h>
using namespace std;
int main() {
int n,k,t,sum=0;
scanf("%d%d",&n,&k);
while(n--) {
scanf("%d",&t);
sum+=t;
}
if(sum<0) sum=-sum;
int ans=0;
while(sum) {
for(int i=k; i>=0; i--) {
if(sum>=i) {
sum-=i;
ans++;
break;
}
}
}
printf("%d\n",ans);
return 0;
}