40分求助
查看原帖
40分求助
1657728
liujiaxuan20131025楼主2025/7/30 10:00
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main()
{
	int n, w;
	cin >> n >> w;//纸币的种类和要凑出的钱
	vector<int> a;
	for (int i = 0;i < n;++i)
	{
		int x;
		cin >> x;
		a.push_back(x);
	}
	
	sort(a.begin(), a.end());
	
	/*int mI=0;
	for (int i = 0;i < a.size();++i)
	{
		if (a[i] < a[mI])
		{
			mI = i;
		}
	}*/
	int index = a.size() - 1;//设置为最后一项
	int cnt = 0;
	while (true)
	{
		if (w == 0)
		{
			break;
		}
		while (w < a[index])
		{
			
			
				index--;
			
		}
		w -= a[index];

		cnt++;
		
	}
	cout << cnt;
	return 0;
}
2025/7/30 10:00
加载中...