Назовем билет с шестизначным номером красивым, если его номер одинаково читается как...

0 голосов
64 просмотров

Назовем билет с шестизначным номером красивым, если его номер одинаково читается как слева направо, так и справа налево. Сколько красивых билетов в промежутке от 189980 до 205505.
а) 16
б) 17
в) 32
г)15525


Информатика (209 баллов) | 64 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

# # Код на ruby 2.2.3p173
count = 0
for i in 0..9
    for j in 0..9
        for k in 0..9
            num = i*10**5+j*10**4+k*10**3+k*10**2+j*10**1+i*10**0
            count+=1 if num.between?(189980,205505)
        end
    end
end
p count

ответ 17

(55.0k баллов)
0

оптимизация нужна если скрипт считается медленно. И мало ли вдруг в подобных задачах встретятся другие ограничения, лучше писать универсальный код

0

Это информатика, потому скорее всего требуется программное решение, а не аналитическое. Да я не настаиваю что это самый оптимальный код, но вполне понятный, чем например операции со строками

0

Со всем сказанным можно согласиться. Однако, если всё-таки немного вникнуть в задачу, а также обратить внимание на то, что это тестовый вопрос с вариантами ответов, то можно с вероятностью очень близкой к 1 :), считать, что школьники здесь должны получить ответ без написания программы. И если стоит задача научиться решать подобные задания, то всё-таки рассуждения здесь более предпочтительны. Если же главное - правильную цифру написать, то, конечно, любой способ подойдет.

0

Я бы тесты только программами и решала. А им что не разрешают?

0

Тогда хорошо что я давно не в школе)

0

Вообщем я понимаю ваше фи. Вы его высказали. Хотите решить по другому - добавте и свой ответ, что тем более полезно

0

В данном случае мне больше нравится решение без программы, но писать его желания нет.

0

в архиве есть пара аналитических решений

0

правда многие пришлось удалить изза отсутствия рассчетов или не верный ответ

0