简单题。。。
#define _CRT_SECURE_NO_WARNINGS
#include<cstdio>
#include<cstring>
#include<iostream>
#include<string>
#include<algorithm>
#include<queue>
#include<vector>
#define N 10
#define M 30
#define LL long long
#define mod 1000000007
using namespace std;
int n, m, x, y;
int main(){
while (scanf("%d %d %d %d", &n, &m, &x, &y) != EOF){
if (n > m){
swap(n, m);
swap(x, y);
}
int k = (n + 1) / 2;
int ans = k;
int a = max(x - 1, n - x);
int b = min(m - y + 1, y);
if (k < b && x - 1 != n - x)ans = min(a, b);
if (n == m && (n & 1) && x == y && (x * 2 - 1 == n)) ans = n / 2;
cout << ans << endl;
}
return 0;
}