力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台
分析知:设指针值从1开始依次递增,每次将coins里的值累加起来看能否得到或者大于当前指针值 ,否则就将该指针值累加起来,即需要添加的数
class Solution {
typedef long long ll;
public:
int minimumAddedCoins(vector<int>& v, int t) {
sort(v.begin(),v.end());
ll sum=0;
ll op=1;
ll i=0;
ll ans=0;
while(1){
if(sum>=t)break;
if(i<v.size()&&sum<op&&v[i]<=op){
sum+=v[i];
i++;
}
else if(sum<op){
sum+=op;
ans++;
}
op++;
}
return ans;
}
};