Wprowadzenie
Clarence jest pracownikiem ds. Wprowadzania danych, który pracuje u dostawcy usług internetowych. Jego zadaniem jest ręczne wprowadzanie adresów IP wszystkich klientów usługodawcy internetowego do bazy danych. Robi to za pomocą klawiatury, która ma następujący układ:
1
2
3
4
5
6
7
8
9
.
0
Odległość między środkiem sąsiednich klawiszy poziomo lub pionowo wynosi dokładnie jeden centymetr. Na przykład odległość między środkami 3i 9wynosiłaby dwa centymetry. Odległość między środkami 3i 5wynosiłaby √2 cm. Twierdzenie Pitagorasa jest wystarczające do obliczenia odległości między dowolnymi dwoma kluczami.
Clarence, jak można oczekiwać od osoby pracującej w ISP, używa bardzo wolnego i nieefektywnego systemu pisania. Używa jednego palca i szuka klucza, a następnie przesuwa palec do klawisza, a następnie naciska go i powtarza dla wszystkich cyfr w numerze. Być może znasz ten styl jako „system wyszukiwania orła”, ponieważ palec szuka nad klawiaturą odpowiedniego klawisza, zanim pogrąży się w naciśnięciu klawisza, jak orzeł pogrążający się w celu zabicia.
Na przykład oto, jak Clarence wpisałby liczbę 7851
:
- Zaczyna palcem 7i wciska klucz.
- Przesuwa palec w prawo o 1 cm 8i naciska klawisz.
- Przesuwa palec w górę o 1 cm 5i naciska klucz.
- Przesuwa palec po przekątnej w górę, pozostawia około 2 cm 1i naciska klawisz.
Dlatego też całkowita odległość, że Clarence przeniósł swój palec, aby wpisać 7851
Is 1 + 1 + √2
co stanowi około 3.41cm.
Twoim zadaniem jest napisanie programu, który oblicza odległość, którą Clarence musi przesunąć palcem, aby wpisać dowolne adresy IP.
Opis wejścia
Dane wejściowe to ciąg znaków, który będzie w formie
().().().()
gdzie każda ()
jest liczbą całkowitą w zakresie 0
- 999
. To reprezentuje adres IP, który musi wpisać Clarence. Przykładem może być:
219.45.143.143
Chciałbym również zauważyć, że dane wejściowe takie jak 0.42.42.42
lub 999.999.999.999
są nadal prawidłowe, mimo że są one nieprawidłowymi adresami IP. Dlatego nie musisz dołączać żadnego kodu weryfikacyjnego adresu IP do swojego programu.
Opis wyjścia
Podaj odległość, którą Clarence musi przesunąć palcem, aby wpisać określony adres IP. W razie potrzeby zaokrąglaj odpowiedzi do dwóch miejsc po przecinku i używaj cm
jednostki w wynikach. Dane wyjściowe dla przykładowego wejścia to 27.38cm
(1 + √8 + √5 + 2 + 1 + √5 + 3 + 1 + √5 + √13 + 3 + 1 + √5).