#include <bits/stdc++.h>
using namespace std;
long long n, l, r;
long long gerar(long long n) {
  if (n == 0) {
    return 0;
  }
  return 2 * gerar(n / 2) + 1;
}
long long solve(long long esq, long long dir, long long l, long long r,
                long long valor) {
  long long mid = (esq + dir) / 2;
  long long res = 0;
  if (valor == 1) {
    return 1;
  }
  if (valor == 0) {
    return 0;
  }
  if (mid >= l && mid <= r) {
    res += valor % 2ll;
  }
  if (mid - 1 >= l) {
    res += solve(esq, mid - 1, l, r, valor / 2ll);
  }
  if (mid + 1 <= r) {
    res += solve(mid + 1, dir, l, r, valor / 2ll);
  }
  return res;
}
int main() {
  scanf("%lld %lld %lld", &n, &l, &r);
  long long qtd = gerar(n);
  printf("%lld\n", solve(1, qtd, l, r, n));
}
