제출 #3511

#제출 시각아이디문제언어결과실행 시간메모리
3511jiyong3King of penalty (kriii1_K)C++98
0 / 1
0 ms1940 KiB
#include <iostream>
#include <algorithm>
using namespace std;

#define MAXN 100000

int main()
{
	int p,n;
	int d[MAXN];

	cin >> p >> n;
	for(int i=0;i<n;i++)
		cin >> d[i];
	sort(d,d+n);

	long long sum=0;
	int solve;
	for(solve=0;solve<n;solve++)
	{
		sum+=(long long)d[solve];
		if(sum>=p)
			break;
	}
	
	sum-=(long long)d[solve];
	int first=p-sum-1;
	long long penalty=(solve>0) ? first+d[solve-1] : 0;

	for(int i=solve-2;i>=0;i--)
		penalty+=(long long)(penalty+d[i]);

	cout << solve << " " << penalty << endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...