Submission #998918

#TimeUsernameProblemLanguageResultExecution timeMemory
998918izanbfWiring (IOI17_wiring)C++14
7 / 100
129 ms262144 KiB
#include "wiring.h"
#include <bits/stdc++.h>

using namespace std;

using ll = long long;
using vi = vector<int>;
using vl = vector<ll>;
using vvl = vector<vl>;
const ll INF = 1e18;


ll min_total_length(vi r, vi b) {
	sort(r.begin(), r.end());
	sort(b.begin(), b.end());

	int n = r.size(), m = b.size();

	vvl dp(n+1, vl(m+1, INF));

	dp[0][0] = 0;

	for (int i = 1; i <= n; ++i) {
		for (int j = 1; j <= m; ++j) {
			dp[i][j] = min({
				dp[i-1][j-1] + abs(r[i-1] - b[j-1]),
				dp[i-1][j] + abs(r[i-1] - b[j-1]),
				dp[i][j-1] + abs(r[i-1] - b[j-1])
			});
		}
	}


	return dp[n][m];
}
#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...