#include <bits/stdc++.h>
using namespace std;
const int INF = 2147483647;
const double PI = 3.141592653589793;
int n, m, a, b, ra, rb, ka, kb, res;
void okresl(int a, int &r, int &k) {
  k = a % m;
  r = a / m;
}
int main() {
  scanf("%d %d %d %d", &n, &m, &a, &b);
  a--;
  b--;
  okresl(a, ra, ka);
  okresl(b, rb, kb);
  if (ra == rb || m == 1)
    res = 1;
  else if (ra + 1 == rb) {
    if (ka == 0 && (kb == m - 1 || b == n - 1))
      res = 1;
    else
      res = 2;
  } else if (ka == kb + 1)
    res = 2;
  else {
    res = 3;
    if (ka == 0) res--;
    if (kb == m - 1 || b == n - 1) res--;
  }
  printf("%d\n", res);
  return 0;
}
