Submission #599364

#TimeUsernameProblemLanguageResultExecution timeMemory
599364rajatshenoiPareto (COCI17_pareto)C++14
30 / 80
105 ms4136 KiB
#include <bits/stdc++.h>

using namespace std;

int main(int argc, char const *argv[])
{
	int N; cin >> N;

	vector<int> bal(N, 0);

	int sum = 0;

	for (int i = 0; i < N; i++) {
		cin >> bal[i];
		sum += bal[i];
	}

	sort(bal.begin(), bal.end(), greater<int>());

	vector<int> pref(N, 0);

	pref[0] = bal[0];

	for (int i = 1; i < N; i++) {
		pref[i] = pref[i - 1] + bal[i];
	}

	float diff = 0;
	float A, B;
	float final_A;
	float final_B;
	for (int i = 0; i < N; i++) {
		A = (float) (i + 1) / N * 100;
		B = (float) pref[i] / sum * 100;

		if (abs(B - A) > diff) {
			final_A = A;
			final_B = B;
		}

		diff = abs(B - A);
	}

	cout << final_A << endl;
	cout << final_B << endl;

	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...