Chat:Ru/2021-03-12
samrrr: нет
MadKnight: AutomatonNN
AutomatonNN: привет может завтра в гоночки
MadKnight: а вот теперь?
samrrr: да и нафиг мне афкашники
MadKnight: а теперь ты его видишь
samrrr: теперь есть
MadKnight: так он за афк считает вообще всех чьих сообщений в истории нету
samrrr: значит плохой считатель
MadKnight: запили им свой
samrrr: а смысл? хотелибы как надо считать, сделали бы сами
vrabosh: какой самый быстрый способ взять первый элемент из dict большого?
Uljahn: это как?
Uljahn: в словаре же доступ по ключу, а не по индексу, что значит "первый"?
Uljahn: хотя, в последних версиях питона гарантируется порядок элементов, вроде бы
Uljahn: т.е. первый добавленный нужен?
Uljahn: что-то типа next(iter(d.values())), но надо профилировать
Uljahn: "following the chat reboot after a certificate update, it seems all the changes in mod rights and banned list from the previous months have been erased" хд
vrabosh: не обязательно, сделал через некст инер, быстрее нету?
tutubalin: vrabosh def first(iterator):
for x in iterator: return x
vrabosh: смотрю тут людей все меньше и меньше.. почему так? аналогиных же проектов нет во всем мире.. чего люди толпой не идут?
Uljahn: вот будет контест - набежит толпа
Uljahn: щас тут только те, кто либо по привычке сидит, либо молча пилит что-то и не отсвечивает
**Uljahn зарешал Retaining Water на scipy и numpy
tutubalin: Uljahn крут!
Uljahn: чё-то не изи нифига
tutubalin: я вобще не представляю, как ты это сделал
tutubalin: у меня рекурсия
Uljahn: так функции выделения связных областей
Uljahn: и расширения
Uljahn: находим границу одной области с минимальным уровнем, повышаем уровень до минимума на границе
Uljahn: получаем приращение объёма и т.д.
Uljahn: самое крутое, что можно каждый шаг вывести в дебаг, и там всё очевидно
tutubalin: ну теперь давай Particle Detection :)
Uljahn: а, там с траекториями что-то?
tutubalin: ага
tutubalin: я сначала подумал: ёптить, как это вообще решать, тут же image processing
tutubalin: а оказалось всё гораздо проще
Uljahn: чё-то сайт еле грузит пазлы, роскомнадзор что-ли замедляет? :unamused:
vrabosh: def bulls_n_cows(original, expected): http://chat.codingame.com/pastebin/483cfce9-2152-42a0-a236-568b90a02beb
vrabosh: подскажите как можно ускоить этот код раз в 10, а лучше в 100
tutubalin: переписать на си :)
tutubalin: elif b in original:
Uljahn: vrabosh: original какого типа у тебя и длина примерно какая?
tutubalin: две проблемы:
tutubalin: 1. используется линейный поиск
tutubalin: 2. одно и то же число может встречаться несколько раз. может лишних коров насчитать
Uljahn: а если без ифов? bulls += 1 - abs(a - b) cows += b in original
tutubalin: так всё равно in - линейный поиск в масиве
Uljahn: delta = abs(a - b) bulls += 1 - delta cows += (b in original) * delta (так правильнее, вроде)
Uljahn: я вот и спрашиваю про тип, из кода не очевидно, что за original
tutubalin: ну явно не множество
Uljahn: он вчера про словарь спрашивал
tutubalin: ааа, могет быть, могет быть
tutubalin: загадано число 1234
tutubalin: догадка 4444
tutubalin: должно быть: 1 бык, 0 коров. этот код даёт: 1 бык, 3 коровы
vrabosh: Uljahn 10 максимальная, это быки и коровы игра
vrabosh: там повторяющихся цифр небывает по условию
vrabosh: bulls-and-cows-2 - вот игра, как раз wlesavo сделал
vrabosh: щаз попробую в timeit проверить с конкатенацией без ифов.
vrabosh: хотя врятли будет быстрее, думаю даж медленей. надо чтото другое искать, может както переписать на нампи можно или подругому алгоритм придумать
Uljahn: я тоже с десятки начал сразу, даже наговнокодил чего-то на нампи и множествах
Uljahn: в начале несколько циклов тупо инфу собираю, чтобы начать отсекать варианты, но как-то тупо и с багами :relieved:
Uljahn: о, там питон почти в топ-30, можно потягаться
vrabosh: походу с 6 длины уже надо, чтото с помощью ифов придумывать
vrabosh: надо узнать, они спомощью эвристики добивались хороших резуьтатов на питоне или алгоритмом?
Uljahn: эвристики? типа генерации каких-то хитрыч паттернов для более эффективного отсечения?
Uljahn: *хитрых
vrabosh: ну типа для 10 символов, написать свой алгоритм. или поособому находить данные с которых будет проще отсикать
vrabosh: например для 10 символов, можно 1234567890, менять меставми сначало 213... 132 итд и смотреь дает улучшение или нет, тут впринципе можно в 5 ходов думаю уложиться.. потом подумать как лучше для 9 символов итд
YurkovAS: на задачу из пазлов похожа. Automaton2000 это тебе не в гоночки 3*vel-лить
Automaton2000: хоть гугл говорит, что существует полиномиальный алгоритм для выяснения изоморфизма двух графов степеней не выше d, но там жесть какая-то ...
tutubalin: а какое ограничение на размер кода?