Описание тега hamming-numbers

Числа Хэмминга - это числа, единственные простые множители которых - 2, 3 и 5. Они названы в честь Ричарда Хэмминга, но стали знаменитыми (или печально известными) после того, как Эдсгер Дейкстра задал вопрос о том, как эффективно перечислить их в числовом порядке.
1 ответ

Числа Хэмминга для скорости O(N) и памяти O(1)

Отказ от ответственности: есть много вопросов по этому поводу, но я не нашел ни одного с требованием постоянной памяти. Числа Хэмминга это числа 2^i*3^j*5^kгде i, j, k - натуральные числа. Есть ли возможность генерировать N-е число Хэмминга с O(N) в…
8 ответов

Найдите наименьшее регулярное число, которое не меньше N

Обычные числа - это числа, которые равномерно делят степени 60. Например, 602 = 3600 = 48 × 75, поэтому и 48, и 75 являются делителями степени 60. Таким образом, они также являются обычными числами. Это продолжение округления до следующей степени д…
7 ответов

Алгоритм поиска произведений из набора простых чисел, по порядку, большему, чем х

Рассмотрим конечное множество {2,3,5,...,n}. Я интересуюсь простыми числами, но вопрос может относиться к любому набору чисел. Я хочу найти все возможные произведения этих чисел в возрастающем порядке, в частности, больше или равно некоторому числу …
3 ответа

Производительность seq<int> vs Lazy<LazyList <int >> в F#

Существует хорошо известное решение для генерации бесконечного потока чисел Хэмминга (т.е. всех натуральных чисел n где n = 2^i * 3^j * 5^k). Я реализовал это двумя разными способами в F#. Первый метод использует seq&lt;int&gt;, Решение элегантное, …
06 июл '14 в 20:32
6 ответов

Как найти список всех чисел, кратных только степеням 2, 3 и 5?

Я пытаюсь создать список всех кратных, которые могут быть представлены в форме где a, b и c - целые числа. Я попробовал следующее, [ a * b * c | a &lt;- map (2^) [0..], b &lt;- map (3^) [0..], c &lt;- map (5^) [0..] ] но он перечисляет только степен…
27 ноя '18 в 23:42
1 ответ

Сложность времени, чтобы найти первые N чисел, делимых только на 2, 3 и 5

Проблема - В чем сложность найти первые N чисел, которые делятся только на 2, 3, 5? Мои усилия Код - void printFirstNNumbers(int N) { int numbersFound = 0; // loop#1 for(int cnt = 0; ; cnt++) { int currentNumber = cnt; // loop#2 while(currentNumber …
1 ответ

Слияние ленивых потоков (с помощью генераторов) в Python

Я играю с функциональными возможностями Python 3, и я попытался реализовать классический алгоритм для вычисления чисел Хэмминга. Это числа, которые имеют в качестве простых множителей только 2, 3 или 5. Первые числа Хэмминга: 2, 3, 4, 5, 6, 8, 10, 1…
1 ответ

Число Хэмминга с использованием пользовательских функций вместо простых

Проблема Хэмминга - известная проблема, которая в основном генерирует все целые числа, простые факторы которых {2,3,5}. (И это может быть распространено на любой набор основных факторов, я думаю) Чтобы найти n-ое число Хэмминга, есть умный алгоритм…
16 дек '16 в 04:20
3 ответа

Вычисление последовательности Хэмминга в C++ (последовательность чисел, которая имеет только 2, 3 и 5 в качестве делителей)

Возможный дубликат: Генерация последовательности с использованием только простых чисел 2, 3 и 5, а затем отображение n-го члена (C++) Я всегда думал об этом, и я просто не могу понять это. Мне нужно решить следующую проблему: Создайте следующую посл…
24 янв '13 в 06:01
2 ответа

Хаскелл Хемминга, работает, но показывает дубликаты

Я пытаюсь сгенерировать числа Хэмминга в haskell, проблема в том, что я получаю дубликаты # в моем списке вывода, и я не могу понять, почему именно. Должен ли я просто создать функцию удаления дубликатов или мне просто не хватает чего-то простого? Т…
27 июл '12 в 19:25
4 ответа

Генерация последовательности с использованием только простых чисел 2, 3 и 5, а затем отображение n-го члена (C++)

Я работаю над проблемой, которая просит сгенерировать последовательность, используя простые числа 2, 3 и 5, а затем отображая затем n-е число в последовательности. Итак, если я прошу программу отобразить 1000-е число, оно должно отобразить его. Я не…
24 янв '13 в 03:19
4 ответа

Новое состояние в неограниченном поколении последовательности Хемминга

(это захватывающе!) Я знаю, предмет хорошо известен. Уровень техники (как на Хаскеле, так и на других языках) для эффективной генерации неограниченной возрастающей последовательности чисел Хэмминга, без дубликатов и без пропусков, долгое время был с…
1 ответ

Распечатайте список, в порядке возрастания и без дубликатов, натуральных чисел, у которых нет простого множителя, кроме 2, 3 или 5

Это вопрос программирования моей домашней работы для одного из моих курсов. Я не программировал пару лет, и я не был таким уж замечательным с самого начала. Сейчас я прохожу учебные курсы, чтобы вернуться к скорости, но это займет некоторое время. Е…
04 сен '12 в 15:40
21 ответ

Хитрый вопрос Google интервью

Мой друг берет интервью на работу. Один из вопросов на собеседовании заставил меня задуматься, просто хотелось получить обратную связь. Есть 2 неотрицательных целых числа: i и j. Учитывая следующее уравнение, найдите (оптимальное) решение для итерац…
4 ответа

Генерация целых чисел в порядке возрастания с использованием набора простых чисел

У меня есть набор простых чисел, и я должен генерировать целые числа, используя только эти простые факторы в порядке возрастания. Например, если набор равен p = {2, 5}, то мои целые числа должны быть 1, 2, 4, 5, 8, 10, 16, 20, 25, … Есть ли эффектив…
2 ответа

Числа Хэмминга в Хаскеле

Мне нужно определить список чисел, единственными простыми множителями которых являются 2, 3 и 5, числа Хэмминга. (Т.е. числа в виде 2^i * 3^j * 5^k. Последовательность начинается с 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, …) Я могу сделать это с помощью …
23 мар '13 в 17:37
2 ответа

Задача понимания Хаскелла

Я пытаюсь изучить Haskell и списки понимания, но не могу найти решение по этому вопросу: mylist = [x*y | x &lt;- [1..], y &lt;- [1..]] После моих испытаний результат примерно такой mylist = [1,2,3,4,5,...] потому что в списке понимания, x принимает …
12 ответов

Уродливое число

Числа, чьи единственные простые множители составляют 2, 3 или 5, называются уродливыми числами. Пример: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15,... 1 можно рассматривать как 2^0. Я работаю над поиском n-го уродливого номера. Обратите внимание, что эти чи…
05 янв '11 в 01:17
1 ответ

Числа Хэмминга по интервалам

Вот несколько иной подход к генерации последовательности чисел Хэмминга (или обычных чисел, 5-гладких чисел) на основе интервала от одного числа в последовательности до следующего. Вот пример графика указанных интервалов: Таким образом, существует о…
23 окт '17 в 15:36
2 ответа

1 миллиардный уродливый или хемминговский номер?

Это 1-миллиардное уродливое число? 62565096724471903888424537973014890491686968126921250076541212862080934425144389 76692222667734743108165348546009548371249535465997230641841310549077830079108427 0852049798907834304108142988924606347277518106930359…
15 июн '16 в 00:34