Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

FR_10_04 - 25

Dana jest dodatnia liczba całkowita n, na której możemy wykonać dowolną liczbę operacji. Każda operacja polega na zamianie miejscami dwóch sąsiadujących ze sobą cyfr. Po każdej operacji największa potęga liczby 10, która jest nie większa od liczby n nie może ulec zmianie.

Odpowiedz na pytanie. Ile minimalnie operacji trzeba wykonać, aby n stała się liczbą podzielną przez 25?

Wejście

Na wejściu znajduje się dodatnia liczba całkowita n ∈ [1, 10100].

Wyjście

Na wyjściu należy wypisać, ile minimalnie operacji trzeba wykonać, aby n stała się liczbą podzielną przez 25. Jeżeli nie jest to możliwe należy wypisać -1.

Przykład 1

Wejście:

2351

Wyjście:

3

Wyjaśnienie do przykładu:

Jedna z optymalnych sekwencji zamian to: 2351 → 2315 → 3215 → 3125

Przykład 2

Wejście:

123

Wyjście:

-1

Dodane przez:Maciej Boniecki
Data dodania:2018-12-20
Limit czasu wykonania programu:1s
Limit długości kodu źródłowego50000B
Limit pamięci:1536MB
Cluster: Cube (Intel G860)
Języki programowania:All except: ASM32-GCC MAWK BC C-CLANG NCSHARP CPP14-CLANG COBOL COFFEE D-CLANG D-DMD ELIXIR FANTOM FORTH GOSU GRV JS-MONKEY JULIA KTLN NIM OBJC OBJC-CLANG OCT PICO PROLOG R RACKET RUST SCM qobi CHICKEN SQLITE SWIFT UNLAMBDA VB.NET

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.