0 〜 b の範囲内で x で割り切れる値の個数から、0 〜 a-1 の範囲内中で x で割り切れる値の個数を差し引けばいい。ただ、a が 0 のときだけ特殊で、0 は x で割り切れるため +1 する。
using System; namespace ABC048B { class Program { static void Main(string[] args) { var input = Console.ReadLine().Split(' '); var a = long.Parse(input[0]); var b = long.Parse(input[1]); var x = long.Parse(input[2]); if (a == 0) { // 0..b の範囲の中で x で割り切れる値の個数を求める。 // 0 は x で割り切れるので +1 する。 var answer = (b / x) + 1; Console.WriteLine(answer); } else { // 0..b の範囲の中で x で割り切れる値の個数から、 // 0..(a-1) の範囲の中で x で割り切れる値の個数を引く。 var answer = (b / x) - ((a - 1) / x); Console.WriteLine(answer); } } } }