Введение
Кларенс - клерк ввода данных, работающий в интернет-провайдере. Его задача - вручную вводить IP-адреса всех клиентов интернет-провайдера в базу данных. Он делает это с помощью клавиатуры, которая имеет следующую раскладку:
1
2
3
4
5
6
7
8
9
.
0
Расстояние между центром горизонтально или вертикально смежных клавиш составляет ровно один сантиметр. Например, расстояние между центрами 3и 9будет два сантиметра. Расстояние между центрами 3и 5будет √2см. Теорема Пифагора достаточна для вычисления расстояния между любыми двумя ключами.
Кларенс, как и следовало ожидать от того, кто работает в ISP, использует очень медленную и неэффективную систему набора текста. Он использует один палец и ищет клавишу, затем перемещает палец к клавише, затем нажимает ее и повторяет все цифры в числе. Возможно, вы знаете об этом стиле как «поисковая система орла», так как палец ищет над клавиатурой правильную клавишу, а затем нажимает на нажатие клавиши, как орел, опускающийся вниз для убийства.
Например, вот как Кларенс наберет номер 7851
:
- Он начинает пальцем 7и нажимает ключ.
- Он перемещает палец вправо на 1 см 8и нажимает клавишу.
- Он перемещает палец вверх на 1 см 5и нажимает клавишу.
- Он двигает пальцем по диагонали вверх и влево на √2см 1и нажимает клавишу.
Поэтому общее расстояние, Кларенс пошевелил пальцем , чтобы ввести 7851
IS , 1 + 1 + √2
который составляет около 3.41cm.
Ваша задача - написать программу, которая вычисляет расстояние, которое Кларенс должен двигать пальцем, чтобы ввести произвольные IP-адреса.
Описание входа
Ввод - это строка, которая будет иметь вид
().().().()
где каждый ()
является целым числом в диапазоне 0
- 999
. Это представляет IP-адрес, который должен ввести Кларенс. Пример ввода может быть:
219.45.143.143
Я также хотел бы отметить, что входные данные, такие как 0.42.42.42
или 999.999.999.999
все еще являются действительными входными данными, несмотря на тот факт, что они являются недействительными IP-адресами. Поэтому вам не нужно включать какой-либо код подтверждения IP-адреса в вашу программу.
Описание выхода
Выведите расстояние, на которое Кларенс должен сдвинуть палец, чтобы набрать указанный IP-адрес. Округлите ответы до двух знаков после запятой, где это необходимо, и используйте cm
единицу в выходных данных. Выход для входного примера: 27.38cm
(1 + √8 + √5 + 2 + 1 + √5 + 3 + 1 + √5 + √13 + 3 + 1 + √5).