

Time Limit: 2 sec / Memory Limit: 256 MB
配点 : 200 点
問題文
非負の整数 a, b (a ≤ b) と、正の整数 x が与えられます。 a 以上 b 以下の整数のうち、x で割り切れるものの個数を求めてください。
制約
- 0 ≤ a ≤ b ≤ 10^{18}
- 1 ≤ x ≤ 10^{18}
入力
入力は以下の形式で標準入力から与えられる。
a b x
出力
a 以上 b 以下の整数のうち、x で割り切れるものの個数を出力せよ。
入力例 1
4 8 2
出力例 1
3
4 以上 8 以下の整数のうち 2 で割り切れるものは、4, 6, 8 です。
入力例 2
0 5 1
出力例 2
6
0 以上 5 以下の整数のうち 1 で割り切れるものは、0, 1, 2, 3, 4, 5 です。
入力例 3
9 9 2
出力例 3
0
9 以上 9 以下の整数のうち 2 で割り切れるものはありません。
入力例 4
1 1000000000000000000 3
出力例 4
333333333333333333
オーバーフローに注意してください。
Score : 200 points
Problem Statement
You are given nonnegative integers a and b (a ≤ b), and a positive integer x. Among the integers between a and b, inclusive, how many are divisible by x?
Constraints
- 0 ≤ a ≤ b ≤ 10^{18}
- 1 ≤ x ≤ 10^{18}
Input
The input is given from Standard Input in the following format:
a b x
Output
Print the number of the integers between a and b, inclusive, that are divisible by x.
Sample Input 1
4 8 2
Sample Output 1
3
There are three integers between 4 and 8, inclusive, that are divisible by 2: 4, 6 and 8.
Sample Input 2
0 5 1
Sample Output 2
6
There are six integers between 0 and 5, inclusive, that are divisible by 1: 0, 1, 2, 3, 4 and 5.
Sample Input 3
9 9 2
Sample Output 3
0
There are no integer between 9 and 9, inclusive, that is divisible by 2.
Sample Input 4
1 1000000000000000000 3
Sample Output 4
333333333333333333
Watch out for integer overflows.