CSES - Numerot

Tehtäväsi on laskea, monessako luvussa välillä [a,b][a,b] jokainen numero on 22 tai 55. Esimerkiksi välillä [1,100][1,100] luvut ovat 22, 55, 2222, 2525, 5252 ja 5555, joten vastaus on 66.

Toteuta tiedostoon twodigit.py funktio count_numbers, joka laskee välillä olevat luvut. Funktiolla annetaan parametrit aa ja bb: välin alku- ja loppukohta.

Funktiosi toimintaa testataan suurella määrällä erilaisia testejä. Jokaisessa testissä 1ab1091 \le a \le b \le 10^9.

Sinun tulee toteuttaa funktio tehokkaasti niin, että se ilmoittaa vastauksen välittömästi suurellakin lukuvälillä.

def count_numbers(a, b):
    # TODO

if __name__ == "__main__":
    print(count_numbers(1, 100)) # 6
    print(count_numbers(60, 70)) # 0
    print(count_numbers(25, 25)) # 1
    print(count_numbers(1, 10**9)) # 1022
    print(count_numbers(123456789, 987654321)) # 512