Size: a a a

2016 November 03

GM

Golden Melon in pro.algorithms
@isenbaev вкинет же
источник

V🇺

Vladislav 🇺🇸🚜🇷🇺 in pro.algorithms
#problem #easy
Дан поток положительных целых чисел A, заданный функцией int next(), возвращающей числа из A по одному (next() == 0 означает конец потока). Известно что любое число кроме x встречается в потоке четное число раз, а x - нечетное. Нужно найти значение x.
Считайте что поток A слишком большой чтобы прочитать его целиком в память, все числа <= 1000000000
источник

V🇺

Vladislav 🇺🇸🚜🇷🇺 in pro.algorithms
#problem #hard
Дан поток положительных целых чисел A, заданный функцией int next(), возвращающей числа из A по одному (next() == 0 означает конец потока). Известно что любое число кроме x и y встречаются в потоке четное число раз, а x и y - нечетное. Нужно найти значения x и y.
Считайте что поток A слишком большой чтобы прочитать его целиком в память, все числа <= 1000000000
источник

DS

Dumitru Savva in pro.algorithms
Vladislav 🇺🇸🚜🇷🇺
#problem #hard
Дан поток положительных целых чисел A, заданный функцией int next(), возвращающей числа из A по одному (next() == 0 означает конец потока). Известно что любое число кроме x и y встречаются в потоке четное число раз, а x и y - нечетное. Нужно найти значения x и y.
Считайте что поток A слишком большой чтобы прочитать его целиком в память, все числа <= 1000000000
ХОR ?
источник

AM

Alexander Mikunov in pro.algorithms
поксорить всё, на выходе будет x?
источник

DS

Dumitru Savva in pro.algorithms
Если делать XOR, мы в самом конце получим x ^ y, надо эту проблему решить
источник

IG

Ilyas Gasanov in pro.algorithms
Vladislav 🇺🇸🚜🇷🇺
#problem #hard
Дан поток положительных целых чисел A, заданный функцией int next(), возвращающей числа из A по одному (next() == 0 означает конец потока). Известно что любое число кроме x и y встречаются в потоке четное число раз, а x и y - нечетное. Нужно найти значения x и y.
Считайте что поток A слишком большой чтобы прочитать его целиком в память, все числа <= 1000000000
А над итератором можно?
источник

IG

Ilyas Gasanov in pro.algorithms
Но вообще да, с XOR-ом неинтересно
источник

DS

Dumitru Savva in pro.algorithms
Ilyas Gasanov
Но вообще да, с XOR-ом неинтересно
Почему ?
источник

IG

Ilyas Gasanov in pro.algorithms
Ну если не брать в расчёт поиск среди миллиарда бит двух искомых, то выглядит слишком тривиально
источник

IG

Ilyas Gasanov in pro.algorithms
Однако у меня альтернативная мысль есть
источник

IG

Ilyas Gasanov in pro.algorithms
Есть правда пара других проблем - но одна касается корректности, а другая только производительности
источник

V🇺

Vladislav 🇺🇸🚜🇷🇺 in pro.algorithms
XOR работает для easy
источник

V🇺

Vladislav 🇺🇸🚜🇷🇺 in pro.algorithms
Ilyas Gasanov
А над итератором можно?
да, важно что только один раз можно пройтись
источник

A

Alex Ф-ф-фэils!🌠︙ in pro.algorithms
Alex Katsz
Чтобы не быть пустозвоном: пока не изменяется элемент пофиг, потом записываем больше ли он следующего и проверяем на >=/<= до конца
Д
источник

A

Alex Ф-ф-фэils!🌠︙ in pro.algorithms
guga
Предлагаю постить решения в gist, и давать только ссылки, что бы не спойлерить остальным, а админ, пускай форкает самое удачное решение в канальный гист (отдельно завести придется)
Есть организация сообщества, там можно)
источник

AK

Alex Katsz in pro.algorithms
Я бы написал что решается ксором, но я, видимо, опоздал
источник

AM

Alexander Mikunov in pro.algorithms
Dumitru Savva
Если делать XOR, мы в самом конце получим x ^ y, надо эту проблему решить
эх, вторую задачу я пропустил)
источник

AM

Alexander Mikunov in pro.algorithms
Vladislav 🇺🇸🚜🇷🇺
да, важно что только один раз можно пройтись
во второй задаче тоже только один раз пройтись можно?
источник

V🇺

Vladislav 🇺🇸🚜🇷🇺 in pro.algorithms
Alexander Mikunov
во второй задаче тоже только один раз пройтись можно?
да
источник