fork(2) download
  1. #include <bits/stdc++.h>
  2. #define ll long long
  3. #define INF 100000000000000000
  4. #define forni for (int i=0;i<n;i++)
  5. #define fornj for (int j=0;j<n;j++)
  6. using namespace std;
  7.  
  8. int n,m,b[5002],c[5002];
  9. ll int dp[5002][5002];
  10.  
  11. ll int func(){
  12. for (int i=n;i>=1;i--){
  13. for (int k=m-n+i;k>=i;k--){
  14. dp[i][k]=INF;
  15. for (int j=k;j<=m-n+i;j++){
  16. dp[i][k] = min(dp[i][k],abs(b[i]-c[j])+dp[i+1][k+1]);
  17. }
  18. }
  19. }
  20. cout << dp[1][1];
  21. return 0;
  22. }
  23.  
  24. int main(){
  25. scanf("%d%d",&n,&m);
  26. for (int i=1;i<=n;i++) scanf("%d",&b[i]);
  27. for (int i=1;i<=m;i++) scanf("%d",&c[i]);
  28. sort(b,b+n+1);
  29. sort(c,c+m+1);
  30. func();
  31. return 0;
  32. }
  33.  
Success #stdin #stdout 0s 198912KB
stdin
2 2
9 1
10 5
stdout
5