CSES - Opiskelijanumero

Helsingin yliopiston opiskelijanumero on numerosarja, jossa on yhdeksän numeroa. Ensimmäinen numero on 00 ja viimeinen numero on tarkastusnumero, jonka avulla voidaan havaita näppäilyvirhe opiskelijanumerossa.

Tarkastusnumero saadaan laskemalla summa muista numeroista kertoimilla 3,7,1,3,7,1,3,73,7,1,3,7,1,3,7 vasemmalta oikealle. Jos summa on tasakymmen, tarkastusnumero on 00. Muuten tarkastusnumero on etäisyys seuraavaan tasakymmeneen.

Esimerkiksi opiskelijanumerossa 012749139012749139 summaksi tulee 30+71+12+37+74+19+31+73=913 \cdot 0 + 7 \cdot 1 + 1 \cdot 2 + 3 \cdot 7 + 7 \cdot 4 + 1 \cdot 9 + 3 \cdot 1 + 7 \cdot 3 = 91. Seuraava tasakymmen on 100100, johon etäisyys on 99. Tämän takia opiskelijanumeron viimeinen numero on 99.

Toteuta tiedostoon student.py funktio check_number, joka ilmoittaa, onko parametrina annettu numerosarja oikein muodostettu opiskelijanumero. Funktion tulee palauttaa True tai False.

Funktiosi toimintaa testataan suurella määrällä erilaisia numerosarjoja.

def check_number(number):
    # TODO

if __name__ == "__main__":
    print(check_number("012749138")) # False
    print(check_number("012749139")) # True
    print(check_number("013333337")) # True
    print(check_number("012345678")) # False
    print(check_number("012344550")) # True
    print(check_number("1337")) # False
    print(check_number("0127491390")) # False