6671 vector<pair<int, int>> checkpoints(n);
6672 vector<int> d(n - 1);
6673 for(
int i = 0; i < n; i++) {
6677 checkpoints[i] = make_pair(x, y);
6680 for(
int i = 0; i < n - 1; i++) {
6681 const auto &[x1, y1] = checkpoints[i];
6682 const auto &[x2, y2] = checkpoints[i + 1];
6683 d[i] = abs(x2 - x1) + abs(y2 - y1);
6687 for(
int i = 1; i < n - 1; i++) {
6688 const auto &[x1, y1] = checkpoints[i - 1];
6689 const auto &[x2, y2] = checkpoints[i + 1];
6690 const int dist = abs(x2 - x1) + abs(y2 - y1);
6691 int diff = d[i - 1] + d[i] - dist;
6692 max_diff = max(max_diff, diff);
6694 cout << sum - max_diff;