Доброго дня!! може хтось, добре розібрався в цій задачі допоможе і мені)) а то голова взагалі не варить)) https://acmp.ru/article.asp?id_text=198 - даний матеріал прочитав але реалізувати в життя не можу)) ще не доріс до таких висот)) буду вдячний за допомогу))
Serhii Harasymiv
26 уровень
нуль думок!
Решен
Комментарии (2)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Стас Пасинков Software Developer в Zipy Master
18 апреля 2019, 15:17решение
ну там два лайфхака вказано.
перший, це не перебирати всі числа, а брати тільки таке число з групи тих, в яких повторюються цифри просто на інших позиціях стоять. там навіть написано як це зробити: генерувати число тільки коли наступна цифра у ньому буде >= попередньої. зробіть метод, який це робить.
далі запропонували зробити кеш ступенів. звичайна така двомірна матриця, в якої рядки це одне число, стовпці - інше, а значення - ступінь одного числа у іншому. тоді викликаєте Math.pow() значно рідше. бо один раз як порахували - то поклали результат у масив і наступний раз вже звідти брати готовий обрахований результат, а не щоразу Math.pow() ганять. це теж у окремому методі зробити
третій лайфхак - це вже від себе можу додати: забудьте про перетворення числа на строку і посимвольний розбір такої строки щоб витягти цифри у числі. використовуйте операції ділення для цього (це буде третій метод).
ну і все. була велика задача, розподілили на маленькі і не дуже складні. а тоді вже просто прописати логіку які числа додавати в результат, а які ні.
+4
Serhii Harasymiv
18 апреля 2019, 17:25
окей дякую)) буду пробувати)) вже другий день граюся)) наразі найскладніше до мене доходить метод з матрицею)) але думаю подужаю))
0