func_code_string: #include <bits/stdc++.h>   using namespace std;   const int MAX_N = 110;   const int INF = 1 << 28;   const double EPS = 1e-9;   const double PI = 3.14159265358979;   int n, d;   int a[MAX_N];   int x[MAX_N], y[MAX_N];   int g[MAX_N][MAX_N];   int main() {     cin >> n >> d;     for (int i = (1); i < (n - 1); i++) cin >> a[i];     for (int i = (0); i < (n); i++) cin >> x[i] >> y[i];     for (int i = (0); i < (n); i++)       for (int j = (0); j < (n); j++) {         g[i][j] = d * (abs(x[i] - x[j]) + abs(y[i] - y[j]));         if (i != j) g[i][j] -= a[j];       }     for (int k = (0); k < (n); k++)       for (int i = (0); i < (n); i++)         for (int j = (0); j < (n); j++) g[i][j] = min(g[i][j], g[i][k] + g[k][j]);     cout << g[0][n - 1] << endl;     return 0;   }   