#include <bits/stdc++.h>
using namespace std;
long long query(long long l, long long r, long long ql, long long qr,
                long long i) {
  if (ql <= l && r <= qr) return i;
  long long mid = (l + r) >> 1;
  long long ans = 0;
  if (ql < mid) ans += query(l, mid - 1, ql, qr, i / 2);
  if (qr > mid) ans += query(mid + 1, r, ql, qr, i / 2);
  if (ql <= mid && qr >= mid) ans += query(mid, mid, ql, qr, i % 2);
  return ans;
}
int main() {
  long long n;
  while (~scanf("%I64d", &n)) {
    long long l;
    scanf("%I64d", &l);
    long long r;
    scanf("%I64d", &r);
    long long len = 1;
    long long copn = n;
    while (n > 1) {
      n = n / 2;
      len = len * 2 + 1;
    }
    printf("%I64d\n", query(1, len, l, r, copn));
  }
  return 0;
}
