Математика: пять чисел с уникальными суммами
поэтому мне нужен способ выяснить, как получить 5 чисел, и когда вы добавите любые 2 из них, это приведет к сумме, которую вы можете получить, только добавив эти конкретные два числа.
вот пример о чем я говорю, но с 3 номерами:
1
3
5
1 + 3 = 4
1 + 5 = 6
3 + 5 = 8
добавление любых двух из этих чисел приведет к уникальной сумме, которую нельзя найти, добавив любую другую пару число. Мне нужно это сделать, но с 5 разными номерами. И если у вас есть метод выяснить, как это сделать с любым количеством чисел, обмен, который будет оценен также. Спасибо
3 ответов
1, 10, 100, 10000, 100000
дает вам пять чисел, как вы желаете.
В общем, 1, 10, 100, 1000, ..., 10^k
здесь k
- это количество чисел, которые вам нужны.
и даже более общий, Вы можете сказать b^0, b^1, ..., b^k
, где b >= 2
. Обратите внимание, что у вас есть специальное свойство, которое не только все попарные суммы уникальны, но и все суммы подмножеств уникальны (просто посмотрите на представления в base b
).
набор {1, 2, 5, 11, 21}
тоже работает.
вы можете начать с набора из двух или трех элементов, которые соответствуют этому свойству (любая операция добавления двух элементов из набора {1,2,5}
дает вам уникальную сумму) и включает только следующее рассматриваемое число, если добавления текущих элементов и этот новый элемент также дают вам уникальные суммы.
пример прогона:
предположим, что наш стартовый набор S
и S={1,2,5}
. Пусть U
- множество всех сумм между двумя элементами S
.
Элементы в S
дают нам уникальные суммы 1+2=3
, 1+5=6
, 2+5=7
, так что U={3,6,7}
.
попробуйте добавить 11
в этом наборе. Мы должны проверить это 1+11
, 2+11
и 5+11
все дают нам суммы, которые не видны в U
и все уникальны между собой.
1+11=12
, 2+11=13
, 5+11=17
.
С 12
, 13
и 17
все уникальные суммы между собой, и не найдены в U
, мы можем обновить S
и U
будет:
S1 = {1,2,5,11}
U1 = {3,6,7,12,13,17}
.
вы можете сделать ту же процедуру для 21
, и вы должны (надеюсь) получить:
S2 = {1,2,5,11,21}
U2 = {3,6,7,12,13,17,22,23,26,32}
.
если все, что вам нужно, это быстрый набор, хотя, решение, которое Джейсон опубликовал намного быстрее производить.