#include<iostream>
#include <cmath>
using namespace std;
int countValue(int number, int value) {
int count =0;
int curentIndex = 0;
int currentValue = 0;
int beforeValue = 0;
int afterValue = 0;
while(pow(10, curentIndex) < number) {
currentValue = static_cast<int>(number/pow(10, curentIndex))%10;
beforeValue = static_cast<int>(number/pow(10, (curentIndex + 1)));
afterValue = number % static_cast<int>(pow(10, curentIndex));
if(currentValue == value) {
count += beforeValue * pow(10, curentIndex) + afterValue + 1;
} else if(currentValue < value) {
count += beforeValue * pow(10, curentIndex);
} else {
count += (beforeValue + 1) * pow(10, curentIndex);
}
curentIndex++;
}
return count;
}
int main()
{
int a, b;
cout <<"Sample Input\n";
cin >> a >> b;
cout <<"Sample Output\n";
cout << (countValue(b,3) + countValue(b,6) + countValue(b,9)
- countValue((a-1),3) - countValue((a-1),6) - countValue((a-1),9));
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlIDxjbWF0aD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBjb3VudFZhbHVlKGludCBudW1iZXIsIGludCB2YWx1ZSkgewogICAgaW50IGNvdW50ID0wOwogICAgaW50IGN1cmVudEluZGV4ID0gMDsKICAgIGludCBjdXJyZW50VmFsdWUgPSAwOwogICAgaW50IGJlZm9yZVZhbHVlID0gMDsKICAgIGludCBhZnRlclZhbHVlID0gMDsKICAgIHdoaWxlKHBvdygxMCwgY3VyZW50SW5kZXgpIDwgbnVtYmVyKSB7CiAgICAgICAgY3VycmVudFZhbHVlID0gc3RhdGljX2Nhc3Q8aW50PihudW1iZXIvcG93KDEwLCBjdXJlbnRJbmRleCkpJTEwOwogICAgICAgIGJlZm9yZVZhbHVlID0gc3RhdGljX2Nhc3Q8aW50PihudW1iZXIvcG93KDEwLCAoY3VyZW50SW5kZXggKyAxKSkpOwogICAgICAgIGFmdGVyVmFsdWUgPSBudW1iZXIgJSBzdGF0aWNfY2FzdDxpbnQ+KHBvdygxMCwgY3VyZW50SW5kZXgpKTsKICAgICAgICAKICAgICAgICBpZihjdXJyZW50VmFsdWUgPT0gdmFsdWUpIHsKICAgICAgICAgICAgY291bnQgKz0gYmVmb3JlVmFsdWUgKiBwb3coMTAsIGN1cmVudEluZGV4KSArIGFmdGVyVmFsdWUgKyAxOwogICAgICAgIH0gZWxzZSBpZihjdXJyZW50VmFsdWUgPCB2YWx1ZSkgewogICAgICAgICAgICBjb3VudCArPSBiZWZvcmVWYWx1ZSAqIHBvdygxMCwgY3VyZW50SW5kZXgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGNvdW50ICs9IChiZWZvcmVWYWx1ZSArIDEpICogcG93KDEwLCBjdXJlbnRJbmRleCk7CiAgICAgICAgfQogICAgICAgIGN1cmVudEluZGV4Kys7CiAgICB9CiAgICByZXR1cm4gY291bnQ7Cn0KCmludCBtYWluKCkKewogICAgaW50IGEsIGI7CiAgICBjb3V0IDw8IlNhbXBsZSBJbnB1dFxuIjsKICAgIGNpbiA+PiBhID4+IGI7CiAgICBjb3V0IDw8IlNhbXBsZSBPdXRwdXRcbiI7CiAgICBjb3V0IDw8IChjb3VudFZhbHVlKGIsMykgKyBjb3VudFZhbHVlKGIsNikgKyBjb3VudFZhbHVlKGIsOSkgCiAgICAgICAgICAgIC0gY291bnRWYWx1ZSgoYS0xKSwzKSAtIGNvdW50VmFsdWUoKGEtMSksNikgLSBjb3VudFZhbHVlKChhLTEpLDkpKTsKICAgIHJldHVybiAwOwp9