ENG  RUSTimus Online Judge
Online Judge
Problems
Authors
Online contests
About Online Judge
Frequently asked questions
Site news
Webboard
Links
Problem set
Submit solution
Judge status
Guide
Register
Update your info
Authors ranklist
Current contest
Scheduled contests
Past contests
Rules
back to board

Common Board

One intresting problem...
Posted by Ivanov Alexander 23 Sep 2007 20:35
Вообщем есть такая интересная задача:
надо вычислить минимальное число, обладающее заданным количеством делителей
Кто-нибудь знает, как она решается?
Re: One intresting problem...
Posted by Lomir 23 Sep 2007 20:49
Если число <10^18 тогда перебором.
Если больше, тогда незнаю :)
Re: One intresting problem...
Posted by Ivanov Alexander 23 Sep 2007 21:10
Задано исключительно количество делителей, что перебирать?
Re: One intresting problem...
Posted by quotter 23 Sep 2007 21:43
Перемножить делители?
Re: One intresting problem...
Posted by Victor Barinov (TNU) 23 Sep 2007 22:25
Интересная задача. В общем случае ее наверное не решишь... А вот если есть какие-то ограничения, то можно подумать. Я бы отталкивался от следующей формулы:

Если число X представимо в виде p1^n1 * p2^n2 * ... pk^nk, то количество его делителей равно: (n1+1) * (n2+1) * ... * (nk+1)
Re: One intresting problem...
Posted by Vedernikoff Sergey 23 Sep 2007 22:56
I've solved it for N <= 1000 with bruteforce...
Re: One intresting problem...
Posted by Ivanov Alexander 24 Sep 2007 15:34
Спасибо за подсказки!
Не могли бы Вы переслать решение на ivanovalexalex@mail.ru
(если можно .dpr или .pas)?
Спасибо!
Re: One intresting problem...
Posted by awpris 24 Sep 2007 22:31
Есть другое решение без полного перебора - в основе идеи решения лежит основная теорема арифметики: единственность представления составного числа на простые сомножители.
Число делителей связано с показателями степеней простых чисел в разложении заданного числа единственным способом.
Это утверждение доказывается как следствие основной теоремы арифметики.
Re: One intresting problem...
Posted by Razdolbay from SIS 25 Sep 2007 03:25
Victor Barinov has already written about it.

>> Если число X представимо в виде p1^n1 * p2^n2 * ... pk^nk, то количество его делителей равно: (n1+1) * (n2+1) * ... * (nk+1)

About solution:

Let N=p1*p2*p3*...*pk - prime numbers.
p1>=p2>=...>=pk

Answer almost always is 2^(p1-1)*3^(p2-1)*5^(p3-1)*...