Уравнение n log2 n = 10^6

vi0
Дата: 14.07.2018 08:40:31
Добрый день
Помогите решить уравнение n log2 n = 10^6

Покрутил повертел я его, на формулу Стирлинга по ходу дела натолкнулся, но результата нет.
Видимо нужно какое то свойство логарифма применить?

Это из Кормена задача 1.1
Соколинский Борис
Дата: 14.07.2018 10:31:48
vi0
Добрый день
Помогите решить уравнение n log2 n = 10^6

Покрутил повертел я его, на формулу Стирлинга по ходу дела натолкнулся, но результата нет.
Видимо нужно какое то свойство логарифма применить?

Это из Кормена задача 1.1

Формула Стирлинга - приближенная, а тебе нужно точное решение. У трансцендентных уравнений нет каноничных методов, можно только угадывать.
vi0
Дата: 14.07.2018 10:39:56
Соколинский Борис,
Да, видимо угадывать нужно будет.
Я не совсем точно переформулировал задачу. Там будет не уравнение, а неравенство.
Gennadiy Usov
Дата: 14.07.2018 12:47:35
Тут я что-то нашел похожее:
https://www.quora.com/How-do-I-find-value-of-n-in-n-log-n-10-6
MBo
Дата: 14.07.2018 13:35:51
vi0,
Бинарным поиском находишь наибольшее (или наименьшее. в зависимости от знака неравенства) целочисленное значение n, удовлетворяющее условию.

Более точное вещественное значение можно найти численными методами (например, методом Ньютона), но практического смысла в этом нет.
miksoft
Дата: 14.07.2018 13:50:49
MBo
vi0,
Бинарным поиском находишь наибольшее (или наименьшее. в зависимости от знака неравенства) целочисленное значение n, удовлетворяющее условию.
Не обязательно целое. Можно и дробное с любой необходимой точностью.

Если нужно разово, то "подбор параметра" в Excel-е вполне справляется.
mayton
Дата: 14.07.2018 14:50:37
Попробовал избавиться от логарифма аргумента.



Перебросим n под логарим.



По самой главной формуле логарифма.



Как решать дальше - ХЗ. Но если функция слева - монотонна и непрерывна на интервале - то мы можем
методом Ньютона найти чему равно N.

Кстати в некоторых источниках n^n аппроксимирует факториал. Когда надо уйти от дискретности
и чего-то там посравнивать по табличке скорости роста функций в пределе.
Gennadiy Usov
Дата: 14.07.2018 15:07:47
miksoft
Если нужно разово, то "подбор параметра" в Excel-е вполне справляется.

Если 2^(10^6) = 2^(1000000) или почти 1,0E+200000, то какая ячейка это выдержит?
Соколинский Борис
Дата: 14.07.2018 15:12:39
Gennadiy Usov,
Для численного решения нужно привести к виду
mayton
Дата: 14.07.2018 15:29:29
Вобщем для метода Ньютона нам нужно дифференцировать левую часть. И здесь
самая первая формула гораздо лучше. Если убрать логарифм по основанию 2
и перейти к натуральному то производная будет.



В правой части будет - константа вида дробь где числитель - миллон а знаменатель натуральный логарифм 2.
Но нам пофиг ибо легче посчитать это и самую первую формулу чем последнюю где N в степени N
и не хватает никакой разумной разрядности ячейки чтобы считать.