#include <bits/stdc++.h>
using namespace std;
int main() {
  long long l1, r1, l2, r2, k;
  cin >> l1 >> r1 >> l2 >> r2 >> k;
  long long time1 = r1 - l1 + 1;
  if (l1 > r2 || l2 > r1) {
    time1 = 0;
    goto final;
  }
  if (l2 == r1 || r2 == l1) time1 = 1;
  if (l1 < r2 && r2 < r1) time1 -= (r1 - r2);
  if (r1 > l2 && l2 > l1) time1 -= (l2 - l1);
  if ((l2 >= l1 && l2 <= k && k <= r1 && r1 <= r2) ||
      (l2 <= l1 && l1 <= k && k <= r1 && r1 <= r2) ||
      (l2 <= l1 && l1 <= k && k <= r2 && r1 >= r2) ||
      (l2 >= l1 && l2 <= k && k <= r2 && r1 >= r2))
    time1--;
final:
  cout << time1;
  return 0;
}
