Submission #106223

#TimeUsernameProblemLanguageResultExecution timeMemory
106223SecretAgent007Wiring (IOI17_wiring)C++17
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> #include "wiring.h" using namespace std; #define int long long vector< vector< int > > memo; int dp(int n, int m, vector< int > red, vector< int > blue){ if(n < 0 || m < 0){ return INT_MAX; } if(n == 0 && m == 0){ return memo[n][m] = abs(red[n]-blue[m]); } if(memo[n][m] != -1) return memo[n][m]; return memo[n][m] = min(dp(n-1, m-1, red, blue), min(dp(n-1,m,red, blue), dp(n,m-1,red,blue))) + abs(red[n]-blue[m]); } #undef int long long min_total_length (vector <int> red, vector <int> blue) { #define int long long int n = red.size(); int m = blue.size(); if(n < 500 && m < 500){ memo.resize(n, vector<int>(m)); for(int i = 0; i < n; i++){ for(int j = 0; j < m; j++){ memo[i][j] = -1; } } return dp(n-1,m-1,red,blue); } int tot = 0; int f = 0; int s = 0; while(f < n && s < m){ tot += blue[s]-red[f]; s++; f++; } while(f < n){ tot += blue[0]-red[f]; f++; } while(s < m){ tot += blue[s]-red.back(); s++; } return tot; } /* signed main(){ ios::sync_with_stdio(false); cin.tie(0); int n, m; cin >> n >> m; vector< int > red(n); vector< int > blue(m); for(int i = 0; i < n; i++){ cin >> red[i]; } for(int i = 0; i < m; i++){ cin >> blue[i]; } cout << min_total_length(red, blue) << endl; }*/

Compilation message (stderr)

wiring.cpp: In function 'long long int min_total_length(std::vector<int>, std::vector<int>)':
wiring.cpp:44:29: error: could not convert 'red' from 'std::vector<int>' to 'std::vector<long long int>'
   return dp(n-1,m-1,red,blue); 
                             ^