코딩공부/Softeer

[Softeer/C++]Level2 금고털이

usingsystem 2024. 3. 8. 14:56
728x90

https://softeer.ai/practice/6288/history?questionType=ALGORITHM

 

Softeer - 현대자동차그룹 SW인재확보플랫폼

 

softeer.ai

소스코드

#include <iostream>
#include <vector>
#include <map>
#include <algorithm>
#include <string>
using namespace std;

int main()
{
	int bag, n;
	cin >> bag >> n;

	int m;//무게
	int p;//가격
	vector<pair<int,int>> pm;
	int result = 0;
	for (int i = 0; i < n; i++)
	{
		cin >> m >> p;
		pm.push_back({ p,m });
	}
	sort(pm.begin(), pm.end(), greater<>());

	for (int i = 0; i < pm.size(); i++)
	{
		if (bag >= pm[i].second) {
			bag -= pm[i].second;
			result += pm[i].first * pm[i].second;
		}
		else {
			result += bag* pm[i].first;
			break;
		}
	}

	cout << result;
	return 0;
}
728x90