제출 #3531

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

long long int Data[100010];
//long long int sum[100010];
int main()
{
	long long int n, m;
	cin >> m >> n;

	long long int i,j;
	long long int sum=0;
	for(i=0;i<n;i++)
	{
		cin >> Data[i];
		sum += Data[i];
	}

	std::sort(Data,Data+n);
	
	for(i=n;i>=1;i--)
	{
		if(sum >= m)
		{
			sum -= Data[i-1];
			continue;
		}
		long long int Arr[100010]={0,};
		Arr[0] = Data[i-1];
		long long int k = i-2;
		long long int sum2=Arr[0];
		for(j=1;j<i;j++)
		{
			Arr[j] = Arr[j-1] + Data[k];
			sum2 += Arr[j];
			k--;
		}

		long long int diff = m-Arr[i-1]-1;

		long long int ans=sum2;
		ans += (diff * i);
		cout << i << " "  << ans << endl;
		break;
	}

}
#Verdict Execution timeMemoryGrader output
Fetching results...