Submission #805339

#TimeUsernameProblemLanguageResultExecution timeMemory
805339aymanrs이상적인 도시 (IOI12_city)C++14
0 / 100
10 ms1152 KiB
#include<bits/stdc++.h>
using namespace std;
const int MOD = 1e9;
int DistanceSum(int N, int *X, int *Y){
	vector<pair<int, int>> x, y;
	for(int i = 0;i < N;i++){
		x.emplace_back(X[i], i);
		y.emplace_back(Y[i], i);
	}
	sort(x.begin(), x.end());
	sort(y.begin(), y.end());
	long long ans = 0;
	for(int i = 0;i < N;i++){
		long long p = lower_bound(x.begin(), x.end(), make_pair(X[i], i))-x.begin();
		ans += p*X[i]%MOD;
		ans -= (N-p-1)*X[i]%MOD;
		ans %= MOD;
		p = lower_bound(y.begin(), x.end(), make_pair(Y[i], i))-x.begin();
		ans += p*Y[i]%MOD;
		ans -= (N-p-1)*Y[i]%MOD;
		ans %= MOD;
	}
	return (ans+MOD)%MOD;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...