Size: a a a

2021 February 15

c

codingteam@cjr in codingteam
источник

c

codingteam@cjr in codingteam
Minoru
(хоть я и не люблю загадки, да)
источник

c

codingteam@cjr in codingteam
sergevp
Minoru> ну т.е. я написал такое же решение, как и на Питоне: создаём ассоциативный массив со счётчиками чисел, потом обновляем эти счётчики так, чтобы в сумме было n, и потом конструируем выходной массив

Обожди. Там не было ассоциативных массивов! Там обычный массив индексов был. И две сортировки по нему. Сначала сортируем индексы по значениям входного массива, потом в отсортированном массиве отрезаем первые n элементов, сортируем их теперь уже по индексам, и заполняем выходные n элементов из этих индексов?
источник

c

codingteam@cjr in codingteam
sergevp
Minoru> С таким подходом 15 по миллиону проходит за пять секунд :)

И, кстати, лучше делать не 15 по миллиону, а один на 15 миллионов — так сложность выше выходит. :)
источник

FO

FORTRAN ONE LOVE in codingteam
Переслано от FORTRAN ONE LOVE
Being a COBOL developer can be very fun | by Luca Piccinelli | Feb, 2021 | Towards Data Science
https://towardsdatascience.com/being-a-cobol-developer-can-be-very-fun-c0072454d75c
источник

c

codingteam@cjr in codingteam
Minoru
sergevp: а, ну это «тупое» решение с O(n * log(n)), оно не интересное. Я в итоге написал «умное», амортизированно-линейное, которое описал выше. А про «15 по миллиону» не я придумывал :)
источник

c

codingteam@cjr in codingteam
Minoru
@foxtran: скажи, а для тебя «по часовой стрелке» — это в направлении уменьшения угла между кончиком стрелки, осью стрелки и отметкой 12? А то, по-моему, ты не в ту сторону во времени движешься :P
источник

FO

FORTRAN ONE LOVE in codingteam
codingteam@cjr
Minoru
@foxtran: скажи, а для тебя «по часовой стрелке» — это в направлении уменьшения угла между кончиком стрелки, осью стрелки и отметкой 12? А то, по-моему, ты не в ту сторону во времени движешься :P
Тихо. Не спугни молодость!
источник

c

codingteam@cjr in codingteam
Minoru
sergevp: кстати погоди-погоди, в performance-версии решение с массивом и двумя сортировками как раз не должно проходить, оно чересчур медленное
источник

FO

FORTRAN ONE LOVE in codingteam
codingteam@cjr
Minoru
@foxtran: скажи, а для тебя «по часовой стрелке» — это в направлении уменьшения угла между кончиком стрелки, осью стрелки и отметкой 12? А то, по-моему, ты не в ту сторону во времени движешься :P
Гм. Да. И, черт побери, сейчас по часовой стрелке это в прошлое :-)
источник

c

codingteam@cjr in codingteam
sergevp
Minoru> кстати погоди-погоди, в performance-версии решение с массивом и двумя сортировками как раз не должно проходить, оно чересчур медленное

Ну, вот, если там 15 по миллиону, то может и пройти. O(nlogn) против O(n) при n=миллион отличаются всего лишь в 20 раз. А ассоциативный массив вполне может быть раз в 10 медленнее, чем обычный. То есть финальное отличие на миллионном тесте будет всего в 2 раза, и его можно не поймать.
источник

c

codingteam@cjr in codingteam
sergevp
Чтобы ловить отличие между O(NlogN) и O(N) — нужно поднимать N. Потому я и предложил один 15-миллионный вместо 15и 1миллионных.
источник

c

codingteam@cjr in codingteam
Minoru
мне автор performance-версии посоветовал проверить, и я проверил, и оказалось, что вариант с сортировкой на Расте проходит в лучшем случае десять тестов-миллионников
источник

c

codingteam@cjr in codingteam
Minoru
«в лучшем случае» это когда нужно вывести 250 тысяч элементов,
источник

t

ttldtor in codingteam
codingteam@cjr
Mr.Purple
я даже не возрващаясь после другого языка с десяток секунд не могу вспомнить как "не равно" пишется
<>
источник

c

codingteam@cjr in codingteam
sergevp
Minoru> приятная ката: https://www.codewars.com/kata/587f0871f297a6df780000cd

Хех, да, классная. Но перевести её на не-питон будет тяжко...
источник

Dv

Dr. Friedrich von Ne... in codingteam
codingteam@cjr
Minoru
каждый раз, возвращаясь к Хаскелю после другого языка и написав `!=` вместо `/=`, я чувствую себя предателем — так давно не трогал Хаскель, что позабыл самые основы :(
А в Эрланге есть оператор =/=, кажется.
источник

SE

Stanislav Ershov in codingteam
Dr. Friedrich von Never
А в Эрланге есть оператор =/=, кажется.
=/=  Exactly not equal to
источник

SE

Stanislav Ershov in codingteam
точно
источник

SE

Stanislav Ershov in codingteam
источник