|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Дано натуральное N. Выяснить, у какого целого числа из отрезка 1...N будет наибольшая сумма делителей. время работы O(N), то есть линейное. Про память не сказано, но чем меньше тем лучше. Насчет размерности чисел не заморачиваемся, полагаем что любое число поместится в некую "числовую переменную", размер и все операции с которой - О(1) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2021, 16:00 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Мне кажется что если игнорировать полные переборы то. Код: sql 1. 2. 3. 4. 5.
Оптимальная стратегия - может быть такая. Искать при набольшем N, наименьшее число делителей. Глазами видно что 254 выгоднее чем 256 т.к. первый имеет один делитель равный половине числа N. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2021, 16:22 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
mayton Код: sql 1.
на всякий: для каждого числа подразумевается сумма всех его делителей. То есть, к примеру, число 12: делители: 2, 3, 4, 6, 12, их сумма равна 27 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2021, 16:43 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
А.... у меня голова забита факторизацией. Сорян. В руке молоток - и вижу кругом гвозди. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2021, 16:46 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
В любом случае, при N=256 оно и будет ответом. А также при любых N= K^M. Очевидно, что и при простом N. Также очевидно, что ни один делитель N не будет ответом. Для остальных N на глаз и не скажу. Можно попробовать многочлены Sum(x10^y). ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2021, 19:08 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Как всегда поспешил выше. Простое N ответом не всегда будет.)) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2021, 20:22 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Имя пользователя1, Если N нечетное, то N-1. Иначе N. Пример: N=16, делители: (8,2) и (4,4). С наибольшей суммой делителей: 8+2=10 N=17, нечетное, простое, смотри N=16 N=18, делители: (9,2) и (6,3). С наибольшей суммой делителей: 9+2=11 N=19, нечетное, простое, смотри N=18 N=20, делители: (10,2) и (4,5). С наибольшей суммой делителей: 10+2=12 N=21, нечетное, делители: (7,3). С наибольшей суммой делителей: 7+3=10, смотри N=20 .... N=256, делители: (128,2), (64,4), (32,8) и (16,16). С наибольшей суммой делителей: 8+2=10 Время работы O(1) :) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2021, 20:42 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Если я правильно понял, то все возможные делители надо складывать, т.е. для степеней двойки ответ будет N*2-2 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2021, 20:45 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Имя пользователя1 на всякий: для каждого числа подразумевается сумма всех его делителей. То есть, к примеру, число 12: делители: 2, 3, 4, 6, 12, их сумма равна 27 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2021, 22:58 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Корявенько поставлена задача. Надо добавить что делать с составными делителями. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2021, 23:06 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
mayton, то, о чем пишет топикстартер, называется аликвотная сумма ( с точностью до почему-то забытой единицы). Определения здесь https://ru.wikipedia.org/wiki/Функция_делителей ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2021, 23:13 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Имя пользователя1 Дано натуральное N. Выяснить, у какого целого числа из отрезка 1...N будет наибольшая сумма делителей. время работы O(N), то есть линейное. Про память не сказано, но чем меньше тем лучше. Насчет размерности чисел не заморачиваемся, полагаем что любое число поместится в некую "числовую переменную", размер и все операции с которой - О(1) Делителями числа N будут различные комбинации этих простых делителей. Но, если будут одни двойки. то комбинации повторяются. Следовательно, простые делители должны быть разными. Тогда больше всего будет делителей у числа, которое есть Р! (факториал). Не совсем, лучше N - произведение различных минимальных простых чисел. А дальше можно думать о сумме этих делителей, в том числе 1 и N. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 09:37 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Соколинский Борис 4 для 16 дважды учитывается? mayton Надо добавить что делать с составными делителями. booby с точностью до почему-то забытой единицы прикольность известного мне прикольного решения в том, что там по ходу пьесы мы узнаем сумму делителей для каждого числа от 1 до N, причем на всё про всё нужно O(N) времени. То есть - О(1) на число. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 10:24 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Имя пользователя1 прикольность известного мне прикольного решения в том, что там по ходу пьесы мы узнаем сумму делителей для каждого числа от 1 до N, причем на всё про всё нужно O(N) времени. То есть - О(1) на число. Ищется произведение простых чисел:2, 3, 5, 7, 11, и т.д. До тех пор, пока это произведение будет меньше N. Максимальным таким числом будет число М, M < N. Вот и ответ на 22376429 с учётом 22376695 . ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 11:31 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Gennadiy Usov Имя пользователя1 прикольность известного мне прикольного решения в том, что там по ходу пьесы мы узнаем сумму делителей для каждого числа от 1 до N, причем на всё про всё нужно O(N) времени. То есть - О(1) на число. Ищется произведение простых чисел:2, 3, 5, 7, 11, и т.д. До тех пор, пока это произведение будет меньше N. Максимальным таким числом будет число М, M < N. Вот и ответ на 22376429 с учётом 22376695 . Не сработает. Например N = 2048 = 2 11 , сумма получается 4094 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 11:40 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Dima T Не сработает. Например N = 2048 = 2 11 , сумма получается 4094 N = 2*3* 5* 7 *11 = 2310 то сумма всех делителей равна 6026: (1, N, по 1, по 2, по 3, по 4) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 11:59 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Gennadiy Usov Dima T Не сработает. Например N = 2048 = 2 11 , сумма получается 4094 N = 2*3* 5* 7 *11 = 2310 то сумма всех делителей равна 6026: (1, N, по 1, по 2, по 3, по 4) По условию N любое, так почему бы не 2048 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 12:00 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Dima T Gennadiy Usov пропущено... Если N = 2*3* 5* 7 *11 = 2310 то сумма всех делителей равна 6026: (1, N, по 1, по 2, по 3, по 4) По условию N любое, так почему бы не 2048 ? А для 2400? Получается 2 решения или больше? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 12:34 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Gennadiy Usov Dima T пропущено... По условию N любое, так почему бы не 2048 ? А для 2400? Получается 2 решения или больше? Не знаю, просто привел пример что это 22376801 неверное решение. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 12:37 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
А для троек - N = 2187 будет 3277. Тоже решение! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 12:38 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
ИМХО не уверен, но такое решение просится: раскладываем N на простые множители и то число у которого простых множителей больше - будет иметь большую итоговую сумму. Если простых множителей одинаково, то берем то, где сумма простых множителей больше которое больше. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 14:16 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Имя пользователя1 прикольность известного мне прикольного решения в том, что там по ходу пьесы мы узнаем сумму делителей для каждого числа от 1 до N, причем на всё про всё нужно O(N) времени. То есть - О(1) на число. Давай сюда своё "прикольное" решение. Посмотрим на его прикольность. Но может так оказаться что факторизация о которой мы говорим - всё равно серебрянная пуля. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 14:21 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Утверждение автора: Имя пользователя1 прикольность известного мне прикольного решения в том, что там по ходу пьесы мы узнаем сумму делителей для каждого числа от 1 до N, причем на всё про всё нужно O(N) времени. То есть - О(1) на число. Gennadiy Usov Ищется произведение простых чисел:2, 3, 5, 7, 11, и т.д. Dima T такое решение просится: раскладываем N на простые множители mayton Давай сюда своё "прикольное" решение. Посмотрим на его прикольность. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 14:53 |
|
Пазл с прикольным решением
|
|||
---|---|---|---|
#18+
Имя пользователя1, вроде как задача на динамическое программирование, т.е. ответ должен следовать из знания решений для меньших аргументов ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 16:25 |
|
|
start [/forum/topic.php?fid=16&fpage=2&tid=1339628]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
others: | 239ms |
total: | 374ms |
0 / 0 |