|
5 / 5 / 1
Регистрация: 24.09.2012
Сообщений: 178
|
|
Быстро возвести в квадрат число заданной длины (<16 байт)01.06.2013, 01:37. Показов 2588. Ответов 9
Метки нет (Все метки)
Нужно быстро возвести в квадрат число заданной длины (<16 байт). Лучшее, что я пока придумал -- это делить число на 2 маленьких по формуле:
Заранее спасибо!
0
|
|
| 01.06.2013, 01:37 | |
|
Ответы с готовыми решениями:
9
Если введенное число отрицательное и четное, то возвести его в 3 степень, иначе возвести в квадрат |
|
39 / 39 / 24
Регистрация: 13.05.2013
Сообщений: 103
|
|
| 01.06.2013, 09:53 | |
|
vlad_light, Я думаю что лучше для чисел меньше 16 байт не будет,
ты насколько я понял работаешь с большими числами, и наверно ты их представляешь в виде, an*B^n + ... + a1*B^1 + a0*B^0, где B - основание системы счисления, а можно узнать каков размер твоей базы? у меня просто имеется алгоритм быстрого возведения в квадрат, для больших чисел с базой unsigned short то есть 16 бит, если такой же размер у тебя то я могу поделиться своим кодом=)
0
|
|
|
39 / 39 / 24
Регистрация: 13.05.2013
Сообщений: 103
|
|
| 01.06.2013, 12:13 | |
|
lazybiz, ну как бы если число < 16 байт то получится меньше 32 байт
0
|
|
|
1360 / 988 / 119
Регистрация: 30.07.2010
Сообщений: 5,297
|
|
| 01.06.2013, 13:47 | |
|
vlad_light, я всегда считал, и продолжаю считать, что самый эфективный способ возведения в квадрат — умножение числа на самого себя.
Если нужна длинная арифметика (тогда ты неправильно сформулировал условия), то используй быстрое проебразование Фурье, лучшего результата на практике ты вряд ли достигнешь.
0
|
|
|
5 / 5 / 1
Регистрация: 24.09.2012
Сообщений: 178
|
||||
| 01.06.2013, 15:08 [ТС] | ||||
У меня размер базы 32 бита (беззнаковый инт)
Вот у меня, например, БПФ работает медленнее, чем алгоритм Карацубы. Он начинает выигрывать на числах порядка 1 миллиона бит, а такие я не использую.
0
|
||||
|
39 / 39 / 24
Регистрация: 13.05.2013
Сообщений: 103
|
||
| 01.06.2013, 17:42 | ||
|
Добавлено через 2 минуты iama, не соглашусь с тобой, есть алгоритмы работающие быстрее чем умножение само на себя, я имею ввиду чисел длинной до 70 тысяч бит, после 100 я думаю самый оптимальный алгоритм, это алгоритм Шёнгахе-Штрассена, как раз использующий в себе БПФ
0
|
||
|
5 / 5 / 1
Регистрация: 24.09.2012
Сообщений: 178
|
||
| 01.06.2013, 17:52 [ТС] | ||
Какая разница 16 и 32 бит или 32 и 64?Скинь код возведение в квадрат, пожалуйста)
0
|
||
|
39 / 39 / 24
Регистрация: 13.05.2013
Сообщений: 103
|
||||||
| 01.06.2013, 21:05 | ||||||
|
vlad_light, не ну я не знаю, просто когда я использовал unsigned long long то когда возникал перенос, то есть в более старшей стоял битик либо 0 либо 1, то он оставшиеся биты заполнял как попало, и работа происходила некорректно
Добавлено через 4 минуты
1
|
||||||
|
5 / 5 / 1
Регистрация: 24.09.2012
Сообщений: 178
|
||||||
| 02.06.2013, 16:02 [ТС] | ||||||
|
Можешь затестить, какая быстрее работает?
Кликните здесь для просмотра всего текста
0
|
||||||
| 02.06.2013, 16:02 | |
|
Помогаю со студенческими работами здесь
10
Возвести введенное с клавиатуры число в квадрат Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|