倒數計時34天

演算法怎麼那麼難啊發表於2024-03-05

1.小紅的口罩 (nowcoder.com)

#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=2e5+6;
const int inf=0x3f3f3f3f;
const double pi=acos(-1.0);
priority_queue<int,vector<int>,greater<int> > qu;
void solve()
{
	int n,k;
    cin>>n>>k;
    for(int i=1;i<=n;i++)
    {
        int x;
        cin>>x;
        qu.push(x);
    }
    int cnt=0;
    while(k>0)
    {
        int r=qu.top();
        k-=r;
        qu.pop();
        qu.push(2*r);
        cnt++;
    }
    if(k<0)cnt-=1;
    cout<<cnt;
}
signed main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(nullptr),cout.tie(nullptr);
	int t=1;
	//cin>>t;
	while(t--)
	{
		solve();
	}
	return 0;
}

2.

相關文章