Size: a a a

2021 April 04

ΑZ

Αλεχ Zhukovsky in rust_offtopic
в обоих массивах есть одна единица, две двойки и одна тройка
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
остальные элементы различаются
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
нужно вернуть 1,2,2,3
источник

SP

Stanislav Popov in rust_offtopic
ну это же надо ВЫВЕСТИ ебать
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Надо вернуть
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
источник

TK

Traveller Kolsky in rust_offtopic
Так, а что тут надо сделать, посчитать, сколько раз минимум встречается каждый элемент в пересечении? Тогда хэшмапа нужна, очевидно.
источник

SP

Stanislav Popov in rust_offtopic
нет, из трех массивов надо вывести правила по которым они построились
источник

TK

Traveller Kolsky in rust_offtopic
От природы элементов тоже зависит, как можно решить
источник

TK

Traveller Kolsky in rust_offtopic
В общем случае мапу делаем, где ключом будет значение в массиве, а значением - пара (l_count, r_count), где сколько раз встретилось. Потом map в iter::repeat по min_count, flatten, collect, sort.
источник

TK

Traveller Kolsky in rust_offtopic
(если порядок неважен, тогда и без sort можно)
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Ну вот так например
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
минимум аллокаций, все просто и понятно
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
есть даже небольшой дроч чтобы в хэшмапу более маленькую коллекцию запихивать
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
в 1 проход
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
у чувака каждый count на каждой итерации делает столько же работы сколько весь метод по подсчету пересечения
источник

SP

Stanislav Popov in rust_offtopic
сосите хуй солдаты нато
источник

SP

Stanislav Popov in rust_offtopic
a = [1, 2, 3, 2, 0]
b = [5, 1, 2, 7, 3, 2]


# Надо вернуть [1, 2, 2, 3] (порядок неважен)

a.sort()
b.sort()

res = []

bi = 0
ai = 0

try:
   while True:

       if a[ai] < b[bi]:
           ai += 1
       elif a[ai] > b[bi]:
           bi += 1
       else:

           res.append(a[ai])

           bi += 1
           ai += 1

except:
   print(res)
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Не помню точно, но с вероятностью 3 сигма я продолбал граничные условия
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
вероятность в сигмах
источник