2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Наименьшее число с таким же свойством, как у 122222
Сообщение01.11.2016, 00:29 
Аватара пользователя


01/12/11

8634
Число 122222 обладает необычным и довольно любопытным свойством. Если сумму его цифр сложить с суммой квадратов его цифр, получится произведение его цифр.

А как найти наименьшее целое положительное число с таким же свойством?

 Профиль  
                  
 
 Re: Наименьшее число с таким же свойством, как у 122222
Сообщение01.11.2016, 03:39 
Аватара пользователя


20/10/12
308
Компьютер быстро находит много таких чисел, и наименьшее из них равно 2233.

В нескольких первых числах этой последовательности встречаются все цифры кроме 0 и 9. С 0 всё ясно, а вот отсутствие 9 может показаться подозрительным нумерологу-любителю. А вдруг чисел с девяткой в этой последовательности нет совсем, и что это значит?

 Профиль  
                  
 
 Re: Наименьшее число с таким же свойством, как у 122222
Сообщение01.11.2016, 06:33 
Аватара пользователя


20/10/12
308
Через несколько часов Питон нашел число с девяткой: 1111111449

 Профиль  
                  
 
 Re: Наименьшее число с таким же свойством, как у 122222
Сообщение01.11.2016, 09:20 
Аватара пользователя


01/12/11

8634
Sphinx Pinastri

(Оффтоп)

Почему лишь через несколько часов? Вас не затруднит программный код выложить?

 Профиль  
                  
 
 Re: Наименьшее число с таким же свойством, как у 122222
Сообщение01.11.2016, 10:49 


28/03/16
53
Python

(Оффтоп)

Код:
def dig_sum(x):
    Sum = 0
    while x > 0:
        Sum = Sum + x % 10 + (x % 10)**2
        x = x // 10
    return Sum
def dig_proud(x):
    Product = 1
    while x > 0:
        Product = Product * (x % 10)
        x = x // 10
    return Product
for i in range(1,3*10**6):
    if dig_sum(i) == dig_proud(i):
        print(i)

Первые результаты:

(Оффтоп)

2233 2238 2283 2323 2328 2332 2382 2823 2832 3223 3228
2238 2283 2323 2328 2332 2382 2823 2832 3223 3228 3232
2283 2323 2328 2332 2382 2823 2832 3223 3228 3232 3282
2323 2328 2332 2382 2823 2832 3223 3228 3232 3282 3322
2328 2332 2382 2823 2832 3223 3228 3232 3282 3322 3822
2332 2382 2823 2832 3223 3228 3232 3282 3322 3822 8223
2382 2823 2832 3223 3228 3232 3282 3322 3822 8223 8232
2823 2832 3223 3228 3232 3282 3322 3822 8223 8232 8322
2832 3223 3228 3232 3282 3322 3822 8223 8232 8322 11444
3223 3228 3232 3282 3322 3822 8223 8232 8322 11444 14144
3228 3232 3282 3322 3822 8223 8232 8322 11444 14144 14414
3232 3282 3322 3822 8223 8232 8322 11444 14144 14414 14441
3282 3322 3822 8223 8232 8322 11444 14144 14414 14441 41144
3322 3822 8223 8232 8322 11444 14144 14414 14441 41144 41414
3822 8223 8232 8322 11444 14144 14414 14441 41144 41414 41441
8223 8232 8322 11444 14144 14414 14441 41144 41414 41441 44114
8232 8322 11444 14144 14414 14441 41144 41414 41441 44114 44141
8322 11444 14144 14414 14441 41144 41414 41441 44114 44141 44411
11444 14144 14414 14441 41144 41414 41441 44114 44141 44411 111356
14144 14414 14441 41144 41414 41441 44114 44141 44411 111356 111358
14414 14441 41144 41414 41441 44114 44141 44411 111356 111358 111365
14441 41144 41414 41441 44114 44141 44411 111356 111358 111365 111385
41144 41414 41441 44114 44141 44411 111356 111358 111365 111385 111536
41414 41441 44114 44141 44411 111356 111358 111365 111385 111536 111538
41441 44114 44141 44411 111356 111358 111365 111385 111536 111538 111563
44114 44141 44411 111356 111358 111365 111385 111536 111538 111563 111583
44141 44411 111356 111358 111365 111385 111536 111538 111563 111583 111635
44411 111356 111358 111365 111385 111536 111538 111563 111583 111635 111653
111356 111358 111365 111385 111536 111538 111563 111583 111635 111653 111835
111358 111365 111385 111536 111538 111563 111583 111635 111653 111835 111853

(Оффтоп)

P.S. Проверку на перестановку цифр я разумеется не делал, поэтому у меня 12 и 21 одно и то же, но можно улучшить алгоритм и он будет работать быстрее.
P.P.S. Мне кажется, что если эти вычисления представить в виде квадратной матрицы, то выйдет весьма симпатично.

 Профиль  
                  
 
 Re: Наименьшее число с таким же свойством, как у 122222
Сообщение01.11.2016, 11:06 
Заслуженный участник
Аватара пользователя


13/08/08
14495
Про девятку. Я страстный поборник прав компьютеров (беру пример с ТС, немного изменив сабж поборничества), и я против многочасовых мучений аппарата, душимого разными там питонами. Рассуждение — вот мой код.
Данная задача безразлична к перестановкам цифр. Поэтому перебирать числа подряд неблагоразумно. Решим в терминах массива цифр. Заметим, что добавление единички увеличивает итоговую сумму на два, а произведение оставляет без изменений. Заметим также, что сумма всегда четна.
Итак, есть желание получить девятку.
Одна девятка даёт сумму девяносто, а произведение девять. Поувеличиваем двойками произведение так, чтобы оно превысило сумму. Нужно четыре двоечки. Произведение больше на сорок. Ну так добавим двадцать единичек.
Хочите две девятки? Добавим к ним две двойки и шестьдесят шесть единичек.
Не, про минимальность я молчу.

 Профиль  
                  
 
 Re: Наименьшее число с таким же свойством, как у 122222
Сообщение01.11.2016, 11:11 


28/03/16
53
gris в сообщении #1164942 писал(а):
Про девятку. Я страстный поборник прав компьютеров (беру пример с ТС, немного изменив сабж поборничества), и я против многочасовых мучений аппарата, душимого разными там питонами. Рассуждение — вот мой код.
Данная задача безразлична к перестановкам цифр. Поэтому перебирать числа подряд неблагоразумно. Решим в терминах массива цифр. Заметим, что добавление единички увеличивает итоговую сумму на два, а произведение оставляет без изменений. Заметим также, что сумма всегда четна.
Итак, есть желание получить девятку.
Одна девятка даёт сумму девяносто, а произведение девять. Поувеличиваем двойками произведение так, чтобы оно превысило сумму. Нужно четыре двоечки. Произведение больше на сорок. Ну так добавим двадцать единичек.
Хочите две девятки? Добавим к ним две двойки и шестьдесят шесть единичек.
Не, про минимальность я молчу.

Ну да, тут достаточно массива из 10-и цифр и ещё одного дополнительного и тогда совсем быстро дело пойдет.
До миллиона цифр за секунды.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group