С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.90/10: Рейтинг темы: голосов - 10, средняя оценка - 4.90
movielucky
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 13
1

Найти делители "длинного" числа

15.07.2014, 11:03. Просмотров 1940. Ответов 24
Метки нет (Все метки)

Дано число 12 тыс. символов. Необходимо найти все его делители. Подскажите как делать. Обязательно ли использовать длинную арифметику?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.07.2014, 11:03
Ответы с готовыми решениями:

Для каждой строки найти слова, которые не имеют ни одного из букв: "l", "k", "r", "s" i "j"
Задано символьные строки. Строка состоит из нескольких слов (наборов символов),...

Дано натуральное число. Найти сумму последних "n" цифр "n" числа, не применяя переменых значений
Здравствуйте, помогите написать две программы. 1) Дано натуральное число....

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года "весна", "лето", "осень", "зима" определить...

Разработать класс "Массив больших чисел", который состоит из объектов класса "Большие целые числа". Найти сумму элементов массива.
Разработать класс "Массив больших чисел", который состоит из объектов класса...

Наследуемым классом для комплексного числа объявить класс "радиус-вектор", имеющий данные "длина" и "угол"
кто то напишите пожалуйста, вот программа: наследуемым классом для комплексного...

24
zer0mail
2454 / 2090 / 217
Регистрация: 03.07.2012
Сообщений: 7,583
Записей в блоге: 1
16.07.2014, 19:24 21
У Вы уверены, что число в задании не специально подобрано так, чтобы их можно было найти за разумное время?

Добавлено через 50 минут
Например, для 10094000 (это более 12тыс знаков) мой подход легко найдет все делители

Не исключаю также, что в задании нужно было найти все простые делители.
0
NEbO
593 / 460 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
Завершенные тесты: 3
16.07.2014, 20:36 22

Не по теме:

... тем временем movielucky открыл десятую пачку поп-корна ...


по поводу алгоритма -- представьте число в виде простых делителей, как в школе делали. есть такая штука как решето эратосфена, еще щас нагуглил какие-то другие решета, например http://ru.wikipedia.org/wiki/%D0%A0%...B8%D0%BD%D0%B0
возможно, оно также представимо в разреженном виде (пока не вникал), тогда можно будет контролировать рост памяти.
все делители получаются перемножением простых (подождемс еще пару больших взрывов), но и так вы их количество даже тупо на все винчестеры мира не запишите. Более того, если бы винчестер представлял из себя атом, и эти атомы заполняли бы всю обозримую вселенную, и в каждом таком атоме помещалось бы по экзабайту, к примеру, вам понадобилось бы еще штук 2^10000 таких вселенных.
люди, займитесь делом, чесслово. докажите лучше гипотезу Римана, вам еще и лям баксов за это дадут

Добавлено через 14 минут

Не по теме:

кстати, если вам интересно, вот более интересный пример, и его уже действительно реально решить. найдите все делители числа

Код
6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057151

1
zer0mail
2454 / 2090 / 217
Регистрация: 03.07.2012
Сообщений: 7,583
Записей в блоге: 1
16.07.2014, 21:09 23
Че их искать - число простое
1
NEbO
593 / 460 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
Завершенные тесты: 3
16.07.2014, 21:33 24
ну логично, иначе б задача была нерешаемая чем докажете?)))
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
26581 / 17828 / 7051
Регистрация: 22.10.2011
Сообщений: 31,372
Записей в блоге: 6
16.07.2014, 22:52 25
Цитата Сообщение от NEbO Посмотреть сообщение
чем докажете?
2521-1, ключевое слово - Мерсенн
2
16.07.2014, 22:52
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.07.2014, 22:52

Через ООП: Дать для числа наименование: "рубль", "рубля", "рублей";
Помогите пожалуйста с задачей. Могу сделать ее просто, но надо через ООП и у...

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование)
Разработать программу с использованием наследования классов, реализующую...

Многократное "длинное" деление (длинного на короткое)
В общем есть задача на перевод с одной системы счисления в другие, где нужно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru