|
1505 / 969 / 812
Регистрация: 30.04.2016
Сообщений: 3,337
|
||||||
Найти количество N-значных чисел, у которых сумма цифр равна их произведению (оптимизировать код)02.05.2017, 21:03. Показов 10853. Ответов 4
Метки нет (Все метки)
Здравствуйте! Снова приходится просить помощи уважаемых знатоков. Сам в оптимизации не силен. В этой задаче 2 теста из 10 не прошли по времени. Как-то можно это исправить?
Условие: N-значные числа Найти количество N-значных чисел, у которых сумма цифр равна их произведению. Вывести наименьшее среди таких чисел для заданного N (N < 10). Входные данные: Число N не превышающее 10. Выходные данные: В выходном файле через пробел вывести 2 числа: количество искомых чисел и наименьшее среди них. Мое решение:
0
|
||||||
| 02.05.2017, 21:03 | |
|
Ответы с готовыми решениями:
4
Найти количество N-значных чисел, у которых сумма цифр равна их произведению
|
|
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
|
||||||||
| 02.05.2017, 22:29 | ||||||||
|
Не знаю, решит ли это проблему, но раза в два ускорит:
1
|
||||||||
|
1505 / 969 / 812
Регистрация: 30.04.2016
Сообщений: 3,337
|
|
| 02.05.2017, 22:45 [ТС] | |
|
Спасибо! Один тест удалось исправить, но в последнем по-прежнему 2 секунды (9/10, 90%)
0
|
|
| 02.05.2017, 23:52 | |
|
У Вас неверный подход. Посчитайте сколько операций Вы выполните в худшем случае.
Обычно за 1 секунда заходит 10^6, 10^7, 10^8 (тут уже простых) операций. У вас же намного больше. Нужно думать над алгоритмом, а не над оптимизацией. Даже если Вы сдадите - полезных навыков будет в разы меньше, чем от правильного алгоритма. Попытайтесь придумать сами. Это снова дп.
1
|
|
|
|
|||||||||||
| 03.05.2017, 10:06 | |||||||||||
Смысл в том, что рассматриваем только отсортированные по цифрам числа (т.е. d1d2d3..dn, d1<=d2<=d3<=...dn) и при нахождении числа, удовлетворяющего условию, к количеству всех таких чисел добавляем количество разных перестановок его цифр.
2
|
|||||||||||
| 03.05.2017, 10:06 | |
|
Помогаю со студенческими работами здесь
5
Найти количество n-значных цифр, у которых сумма первой половины равна сумме второй
Найти все пары чисел, для которых их сумма равна их произведению и количество таких пар Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|