Given nonnegative integers a and
b (a ≤ b) and
positive integer x. How many numbers
are there between a and b inclusively, divisible by x? 
Input. Three numbers a, b and x (0 ≤ a
≤ b ≤ 1018, 1
≤ x ≤ 1018).
Output. Print the answer to the problem.
| Sample input | Sample output | 
| 5 10 3 | 2 | 
mathematics
Let f(n) be the amount of numbers on the segment [0; n] divisible by x. Let f(a, b)
be the amount of
numbers on the segment [a; b] divisible by x. Then the number of required numbers on the segment [a; b] equals to the amount of
numbers on segment [0; b] minus the amount of numbers on segment [0; a – 1]. So 
f(a, b)
= f(b) – f(a – 1)
The amount of numbers from 0 to n, inclusive, divisible by x is n / x + 1. So
f(n) = n / x + 1
If
initially a = 0, then the answer will
be one term f(0, b), since the value f(0, a – 1)
does not make sense.
Example
In the sample given, we must find the value 
f(5, 10) =
f(10) – f(4)
Let's find
the amount of
numbers from 0 to 10 inclusive, divisible by 3. These will be the numbers 0, 3,
6 and 9. Their amount equals to f(10) = 10
/ 3 + 1 = 4.
Let's find
the amount of
numbers from 0 to 4
inclusive, divisible by 3. These will be the numbers 0 and 3. Their amount equals to f(4) = 4 /
3 + 1 = 2.

Therefore
f(5, 10) =
f(10) – f(4) = 4 – 2 = 2
Algorithm
realization
Read the input data.
scanf("%lld %lld %lld",&a,&b,&x);
Compute k = f(b), l
= f(a – 1).
k = b / x + 1;
l = (a - 1) / x + 1;
For a = 0 the answer
is k = f(b). 
For a ≠ 0 the
answer is f(a, b) = f(b) – f(a – 1) = k – l.
if (a == 0) res = k; else
res = k - l;
Print the answer. 
printf("%lld\n",res);
Java realization
import java.util.*;
 
public class Main
{
  public static long a, b, x;
  public static long f(long n)
  {
    if (n < 0) return 0;
    return n / x + 1;
  }
 
  public static void main(String[] args)
  {
    Scanner con = new Scanner(System.in);
    a = con.nextLong();
    b = con.nextLong();
    x = con.nextLong();
    
    System.out.println(f(b) - f(a-1));
    con.close();
  }
}
Python realization
a, b, x = map(int,input().split())
def f(n):
  if n < 0: return 0
  return n // x + 1
print(f(b) - f(a - 1))