Алгоритм подсчета количества чисел в промежутке от А до B, сумма цифр которых четна?
На каждом отрезке от 10*n до 10*n+9 таких чисел ровно 5. Поэтому нам достаточно посчитать число таких полных отрезков, и обработать краевые отрезки.
Пусть sumdig(n) - функуция, которая выдаёт остаток от деления суммы цифр n на 2.
Тогда:
int s0=(B/10-A/10-1)*5;
int s1=(10+sumdig(A/10)-A%10)/2;
int s2=(2+B%10-sumdig(B/10))/2;
return s0+s1+s2;
А если банально (1+B-A)/2 (без дробной части) ?
Вроде как сходится для малых чисел :-)