Рубрики
Без рубрики

Насколько легко преобразование типа в Python помог мне! Решение проблемы с кодом JAH 2019.

Предполагаемое решение – проблема из квалификатора Jams Code Code в этом году было так просто для кода. Помечено Python, программирование, Google, Codejam.

Предпоказанное решение – проблема из Google Code Варенье Квалификатор в этом году чувствовал себя так просто для кода.

Вы можете проверить полное описание проблемы в этом Ссылка Отказ

Проблема (источник: Google Code Jam 2019 сайт)

Кто-то только что выиграл кодовую джемную лотерею, и мы обязаны им N Jamcoins! Тем не менее, когда мы пытались распечатать проверку более размером, мы столкнулись с проблемой. Значение N, которое является целым числом, включает в себя по меньшей мере одну цифру, которая является 4 … и 4 ключом на клавиатуре нашего проверяемого принтера размера.

К счастью, у нас есть обходной путь: мы отправим наш победитель два чека для положительных целых сумм A и B, так что ни A NOL B не содержит никакой цифры, которая представляет собой 4 и A +. Пожалуйста, помогите нам найти любую пару значений A и B, которая удовлетворяет этим условиям.

Подход

При чтении описания проблемы я прочитал входные ограничения и диапазон, которые составляли около 10¹⁰⁰. Таким образом, это была плохая идея подумать о очень правом растворе на основе петли, которое будет удалять временную сложность, показывающую кошмарное сообщение « Превышение времени! “.

Поэтому я думал о том, чтобы иметь дело с этим с помощью строк. Питон спас меня!

Предполагая, что вы прочитали описание проблемы через ссылку выше, есть номер N, который может содержать цифру 4 с любым количеством вхождений. Задача состояла в том, чтобы выяснить два числа A и B, так что A и B не содержат никакого возникновения цифры 4, а суммирование A и B должно равняться).

Поэтому я подумал о создании нового номера, давайте на сегодняшний день предположим, что это будет одинаково в длине, так как N ( длина означает количество цифр в количестве ). Идея состоит в том, чтобы построить номер A, мы проанализировали число n цифры по цифре. Для каждого возникновения цифры 4 в количестве n мы бы добавили цифру 1 в количестве A. Для отдыха цифр в N, добавьте цифру 0 в A. После этого я получил номер A.

Я получил другое число B, вычитая вновь построенный из Н. И вы видите, у меня есть два числа A и B, которые не содержат цифры 4, и суммирование равно N.

Для реализации этой логики я не мог подумать ничего, но питона. Преобразования простым типом из целочисленного для строки или строки в список и VIZ сделали его так легко для достижения этой работы.

Выполнение

Код.

Мой взгляд

Таким образом, он взломал все тестовые случаи, независимо от того, насколько велико входное число было!

Я считаю, что такая же логика может быть реализована на различных других языках, возможно, лучше всего с точки зрения времени будет в C/C ++, но Python просто делает его супер легко. Вы можете переключиться с разных типов данных с несколькими ключевыми словами, и, как вы хотите.

Я призываю любого читателя попробовать это на другом языке или в Python с меньшими линиями кода.

” Радость кодирования Python должна видеть короткие, краткие, читаемые классы, которые выражают много действий в небольшом количестве четкого кода – не в разрядах тривиального кода, который позволяет читателям до смерти. “

– Guido Van Rossum

#пьютор

#pythonprogmamming

# Codejam.

# первый пост

Спасибо за чтение. Я приветствую обратную связь и конструктивную критику. Я могу добраться в Twitter @ mistryvatsal11 или через мой личный сайт mistryvatsal.github.io Отказ

Оригинал: “https://dev.to/mistryvatsal/how-easy-type-conversion-in-python-helped-me-a-solution-to-problem-from-code-jam-2019-573d”