Submission #1197471

#TimeUsernameProblemLanguageResultExecution timeMemory
1197471akuygaWiring (IOI17_wiring)C++20
0 / 100
157 ms327680 KiB
#include "bits/stdc++.h"
using namespace std;
#define ii pair<int,int>
#define f first
#define s second
#define mp make_pair
#define ll long long
#include "wiring.h"

long long min_total_length(std::vector<int> r, std::vector<int> b) {
    ll sum=0;
	if(r.size()>b.size())swap(r,b);
	sort(r.begin(),r.end());
	sort(b.begin(),b.end());
	int N=r.size(),M=b.size();
	vector<vector<ll>> dp(N+1,vector<ll>(M+1,LLONG_MAX));
	dp[0][0]=0;
    for(int i=1;i<=N;i++)
        for(int j=i;j<=M;j++){
            dp[i][j]=min(dp[i][j-1],dp[i-1][j-1]);
            dp[i][j]+=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...