제출 #1345530

#제출 시각아이디문제언어결과실행 시간메모리
1345530Jawad_Akbar_JJPotatoes and fertilizers (LMIO19_bulves)C++20
0 / 100
7 ms448 KiB
#include <iostream>

using namespace std;
int a[1<<20], b[1<<20];

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

	
	// set<int> ps;
	for (int i=1;i<=n;i++){
		cin>>a[i]>>b[i];
		int k = min(a[i], b[i]);
		a[i] -= k, b[i] -= k;
		// if (a[i])
		// 	ps.insert(i);
	}

	long long Ans = 0;
	for (int i=1;i<=n;i++){
		while (b[i]){
			int id = 1e9;
			for (int j=1;j<=n;j++){
				if (a[j] and abs(i - j) < abs(id - i))
					id = j;
			}
			int k = min(a[id], b[i]);
			Ans += 1LL * abs(id - i) * k;
			a[id] -= k;
			b[i] -= k;
		}
	}
	cout<<Ans<<'\n';

}
#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...