#include #include #include using namespace std; int main() { int N, D; cin >> N >> D; vector P(N), Q(N); for (int i = 0; i < N; ++i) { cin >> P[i] >> Q[i]; } int answer = -(1 << 30); for (int i = 0; i < N; ++i) { for (int j = 0; j < N; ++j) { if (i == j) continue; int ans = -P[i]; ans = min(ans, -P[i] + Q[i] - P[j]); ans = min(ans, (Q[i] - P[i]) * ((D - 1) / 2) + (Q[j] - P[j]) * ((D - 2) / 2) - (D % 2 == 0 ? P[i] : P[j])); ans = min(ans, (Q[i] - P[i]) * (D / 2) + (Q[j] - P[j]) * ((D - 1) / 2) - (D % 2 == 0 ? P[j] : P[i])); answer = max(answer, ans); } } cout << answer << endl; return 0; }