Submission #343412

#TimeUsernameProblemLanguageResultExecution timeMemory
343412updown1Sails (IOI07_sails)C++17
30 / 100
1098 ms4116 KiB
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
#include <map>
#include <set>
#include <climits>
#include <cmath>
#include <fstream>
#include <queue>
#include <stack>
#include <bitset>
//#include "molecules.h"
using namespace std;
#define ll long long
 
const int MAXN = 1e5 + 5;
 
vector<int> cnt(MAXN);
 
 
int main() {
  cin.tie(0);ios_base::sync_with_stdio(0);

	int n;
	cin >> n;
	vector<pair<int, int>> p;
	for (int i = 0; i < n; i++) {
		int a, b;
		cin >> a >> b;
		p.push_back({ a, b });
	}
	sort(p.begin(), p.end());
	ll ans = 0;
	for (int i = 0; i < n; i++) {
		vector<pair<int, int>> pq;
		for (int j = 0; j < p[i].first; j++) {
			pq.push_back({ cnt[j], j });
		}
		sort(pq.begin(), pq.end());
		for (int j = 0; j < p[i].second; j++) {
			ans += pq[j].first;
			cnt[pq[j].second]++;
		}
	}
	cout << ans << endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...