Aman Rawat Ответов: 2

Решение проблемы безопасного взлома


Ноль вниз голосовать
любимый
Этот вопрос был недавно задан в конкурсе, который теперь закончился, но они не делятся с нами передовицами, и этот вопрос застрял у меня в голове, и я не могу получить ответ оптимальным способом, кто-нибудь, пожалуйста, объясните правильный подход для этого очень полезно -: (и если возможно, пожалуйста, объясните, как редакционный THNAKS)

"Satish has a combination safe that consists of multiple rotating dials that are placed next to each other. Each dial is etched with digits 0 through 9, in order. At any stage, exactly one of the digits on each dial is visible. The string formed by concatenating the visible digits of each dial is termed as the current combination. The visible digit on a dial can be changed by rotating the dial up or down. Rotating the dial up increases the digit by 1 i.e. 0 to 1, 1 to 2, and so on. The digits on a dial wrap around so a 9 is followed by 0. Rotating the dial down changes the digit in the reverse direction. We can rotate multiple adjacent dials at the same time. That is, in a single step we can take an arbitrary number of consecutive dials, and rotate all of them one step in the same direction (i.e., either all of them down, or all of them up). Satish is given the current combination (C) and the required combination (R) that unlocks the safe. Write a program to determine the minimum number of steps required to open the safe.
Пример: рассмотрим случай, когда C-это “986”, а R - “007”. Это можно решить в два этапа следующим образом:
Шаг-1: Поверните все 3 циферблата вверх. “986” до “097”
Шаг-2: поверните 2-й циферблат вверх. “097” до “007”,

бывший. 9 2 7 7 8 2 4 3 2 8 Чтобы 5 4 5 7 4 9 4 6 2 9 нужно 16 шагов."

Что я уже пробовал:

Я пытался решить ее грубой силой, но она дала тле .

Patrice T

Можете ли вы дать ссылку на конкурс ?

2 Ответов

Рейтинг:
2

OriginalGriff

Итак, вы разместили это на stack exchange: практика программирования - решение проблемы безопасного взлома - обмен стеками программной инженерии[^]
И переполнение стека: python - решение безопасного взлома - переполнение стека[^]
И как из-за того, что они не будут делать вашу домашнюю работу, вы приносите ее сюда.

Знаешь что? Мы тоже не делаем тебе домашнюю работу... он установлен не просто так. Она существует для того, чтобы вы думали о том, что вам сказали, и пытались понять это. Он также существует для того, чтобы ваш наставник мог определить области, в которых вы слабы, и сосредоточить больше внимания на корректирующих действиях.

Попробуйте сами, возможно, вы обнаружите, что это не так сложно, как вы думаете!

Если вы столкнетесь с конкретной проблемой, то, пожалуйста, спросите об этом, и мы сделаем все возможное, чтобы помочь. Но мы не собираемся делать все это для вас!


Рейтинг:
2

Patrice T

Цитата:
0 голосов против

ЛОЛ
Цитата:
Этот вопрос был недавно задан в конкурсе, который теперь закончился

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

грубая сила никогда не является решением этих проблем, никогда. Нота: есть грубая сила и грубая сила, грубая сила опытного программиста никоим образом не может быть похожа на грубую силу новичка, поэтому мы понятия не имеем, что вы сделали и насколько плохо ваше решение.
Цитата:
кто-нибудь, пожалуйста, объясните правильный подход для этого очень полезно

Просто давая вам полное решение раздутия никогда не поможет вам узнать что-нибудь. Потому что необходимые объяснения будут часами просто объяснять вам, как работает решение. Причина наших решений-многолетняя практика и изучение структур данных / алгоритмов. Мы не можем научить вас этому многолетнему опыту даже за считанные дни.
Таким образом, вы получите волшебное решение, которое вы не можете понять.

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