이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "wiring.h"
#include <bits/stdc++.h>
#define sz(x) (int)x.size()
#define ll long long
using namespace std;
const int MAXN = 205 ;
ll dp[MAXN][MAXN];
void mins(ll& a ,ll b ){
a = min ( a , b ) ;
}
long long min_total_length(vector<int> r, vector<int> b) {
int R = sz(r) , B = sz(b) ;
ll ans = 0 ;
for(int i = 0 ; i <= R ; i++ )for(int j = 0 ; j <= B ; j++ )dp[i][j] = 1e18;
dp[0][0]=0 ;
for(int i=0;i<R;i++){
for(int j=0;j<B;j++){
for(int k = 0 ;k<R;k++)
mins(dp[i][j+1],dp[i][j]+1LL*abs(b[j]-r[k]));
for(int k = 0 ; k < B ; k++ )
mins(dp[i+1][j],dp[i][j]+1LL*abs(b[k]-r[i]));
mins(dp[i+1][j+1],dp[i][j]+1LL*abs(r[i]-b[j]));
}
}
return dp[R][B];
}
// int main() {
// int n, m;
// assert(2 == scanf("%d %d", &n, &m));
// vector<int> r(n), b(m);
// for(int i = 0; i < n; i++)
// assert(1 == scanf("%d", &r[i]));
// for(int i = 0; i < m; i++)
// assert(1 == scanf("%d", &b[i]));
// long long res = min_total_length(r, b);
// printf("%lld\n", res);
// return 0;
// }
컴파일 시 표준 에러 (stderr) 메시지
wiring.cpp: In function 'long long int min_total_length(std::vector<int>, std::vector<int>)':
wiring.cpp:17:5: warning: unused variable 'ans' [-Wunused-variable]
17 | ll ans = 0 ;
| ^~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |