Chat:Ru/2020-04-20

From CG community
Jump to navigation Jump to search

metahom: по ходу не быть мне в полтинике :(

namaska: топ 3 лучших языков программирования на ваше усмотрение :

metahom: а может и нет

metahom: wlesavo, https://www.codingame.com/replay/453138564

namaska: красава

StepanSmirnov: Кстати по поводу эффективности: кто нибудь знает, почему numpy.sum (или любой другой метод прямо из модуля) медленнее одноименного метода у инстанса ndarray, например arr.sum()?

StepanSmirnov: Гуглить пробовал, пишут, что одно и тоже. Хотя разница может быть в механизме возова.

Uljahn: для произвольного инстанса?

StepanSmirnov: я брал 1 и тот же для тестов

Uljahn: и на сколько велика разница?

StepanSmirnov: при 20000 итераций почти в 5 раз

Uljahn: :scream_cat:

StepanSmirnov: матрица 15*15 тип bool_

StepanSmirnov: для int то же самое

Uljahn: ну, 15*15 - не серьёзно, ты что-то другое меряешь, скорее всего

Uljahn: оверхед какой-то

Uljahn: будет ли такая же разница при 1500*1500?

BorisZ: ну простая логика вроде - инстанс сам про себя все уже знает - тип элементов, размерность и так далее, а общий метод возможно сначала все это проверяет а потом вызывает тот же самый метод инстанса

namaska: что делать если у тебя 408 строчек кода ,и ты где-то забыл поставить ;

namaska: ?

StepanSmirnov: при 1500*1500 - 3%

BorisZ: скорее всего даже так - для некоторых типов нельзя вызвать сум

BorisZ: короче некоторый оверхед на лишний вызов функции и возможно какие-то проверки

Uljahn: угу

BorisZ: namaska ты в блокноте что ли код пишешь? все редакторы проверяют синтаксис

namaska: почему тогда вижуал студио сам не поставит там где надо ; ?

Uljahn: я уже и забыл, зачем в коде нужна ;

BorisZ: в какой момент времени он должен это делать? )

BorisZ: ты хозяин своего кода а не редактор, он только предупредить должен, это норма

namaska: Uljahn в с++ ; нужна чтобы закончить строку(команду)

BorisZ: представь себе что посреди написания ты задумался, а он тебе насыпет семиколонов где захочет - кошмар же

namaska: #include <iostream>

namaska: using namespace std;

namaska: int main()

MadKnight: namaska хочешь чтобы редактор сам код дописывал?)

MadKnight: а вдруг не угадает?

MadKnight: как точно сказать хочешь ли ты поставить ; ?

MadKnight: вдруг ты хочешь прибавить ещё число?

MadKnight: x=3 <-- тут надо?

namaska: и это су№а толька начало кода

MadKnight: вдруг ты хочешь сделать x=3+5 ?

MadKnight: а вдруг не в этом дело? вдруг где-то ещё опечатка?

MadKnight: короче ты просто докопался

Uljahn: щас вроде в редакторы интеллектуальные автодополнения внедряют на нейросетях, она обучится на твоих самых частых ошибках и будет дополнять, где надо))

namaska: вот за что я недолюбливаю с++ , если выучишь его синтаксис будешь лучшим программистом планеты

BorisZ: <слишком много шуток>

StepanSmirnov: @namaska, там есть поиск по регулярке, пишешь туда [^;]\n и тебе подсветятся строки без точки с запятой

namaska: спс

namaska: :))

StepanSmirnov: Точнее, которые не заканчиваются на точку с запятой. Ну и автоформат в помощь (Ctrl+K,D)

BorisZ: пытаюсь ужесточить условия на стрельбу после мува как все в один голос советует - вобще не взлетает (

Uljahn: у тебя не слишком сильный упор на сайленс? маловато мин получается

metahom: тоже думал над этим, но руки не дошли

BorisZ: да фиг знает, теперь то уж ничего крутить не буду

BorisZ: я мины расставляю чтоб не пересекались их сплэши

BorisZ: чтоб больше территории покрыть побыстрее

metahom: сколько по времени примерно будет лега пересчитываться?

BorisZ: несколько часов точно больше 2х

Uljahn: BorisZ: 52 фрейм, мне кажется - очень странный сайленс, загнал себя в угол https://www.codingame.com/replay/453173041

metahom: когда в последний момент что-то правишь, начинаешь путаться в версиях :(

metahom: уже не уверен что то надо отправил

Uljahn: лол, баг похоже https://www.codingame.com/share-replay/453177779

Uljahn: BorisZ!

Uljahn: а, не

metahom: 10 минут осталось, все закончили?

Uljahn: фаталити

BorisZ: у меня получается что дальше 18 ходов - все одинаково, видимо тот тупик был достаточно большой

Uljahn: а тупо флудфилом прикидывать?

BorisZ: путь генерю на длинну 8 и потом флудфил в конце чтоб площадь найти с отсечением на 10 клеток

BorisZ: если без отсечения то вобще кранты - по 50 вариантов в худших случаях только успевает

Uljahn: из-за питона?

BorisZ: может из-за кривых рук ( не пытался оптимизировать вобще ничего

tutubalin: так и не запушили меня ( наоборот вниз запулили

Uljahn: даже Bob в топ-400 не вошёл

Uljahn: надо было стримы смотреть))

BorisZ: в конце добавил чтобы при флудфиле клетки с большим уроном считались знятыми тоже - вроде разумно, но на результан не особо повлияло

tutubalin: ну он скорее всего туда и так не ходил

namaska: Рибят за вашу помощь я могу вам свои кода отослать по любым мною сделанным задачам (кроме VOX CODEI - EPISODE 2 потому-что в нее я вложил слишком много сил )

tutubalin: а код красивый?

namaska: в какой задаче ?

tutubalin: в той, которую хочешь показать

namaska: у меня во всех задачах код красивый

Uljahn: меня только нумпайный код интересует, но всё равно спасибо

namaska: я люблю большие кода

namaska: например в Vox Codei - Episode 2 у меня вообще 1100 с чем-то строчек

namaska: у меня большая часть задач написано на с++ и питоне , и некоторые на джаве

VegaPioneer: всем привет) на работе юзаю питон, поэтому начал решать задачи на нем ворос: на hight-level питон по производительности вывозит или уже оптимизаций недостаточно и там уже прявит балом что-то более производительное?

wlesavo: в целом не вывозит, но от игры зависит, в последнем контесте было +- ок

Uljahn: от игры зависит очень сильно

Uljahn: https://www.codingame.com/contests/finished тут можно по лидербордам посмотреть, на каком месте какой язык был

dabino: уфф, прикольный контест. но долго, конечно - месяц надо будет в настолку Captain Sonar поиграть

namaska: кто тоже ждет CODINGAME SPRING CHALLENGE 2020 ?


Uljahn: Automaton2000

Automaton2000: в том и дело, что это не так просто

wlesavo: dabino тоже такие мысли

metahom: теперь ждать :)

metahom: кстати, мы видимо уже останемся на 2м месте универов. Поздравляю :)

wlesavo: хехе, ну так все в легенде

namaska: сегодня хотел поднять 20 уровень .... Теперь хочу хотя-бы 18 поднять

Alex.swift: взяли качеством

Alex.swift: а универ вроцлава количеством)

metahom: кстати единственные с 3 людьми в легенде :)

Alex.swift: и ни одной ачивы не получил. Не продуктивно поиграл

wlesavo: блин, как бы из 20 не вылететь, хочу футболочку

metahom: а я хочу в топ-50

metahom: и еще можно топ-3 по языку :)

wlesavo: то есть зено обогнать надо)

metahom: ага :)

metahom: у меня этот же код сегодня приземлялся на 37 месте. а последний сабмит на 55. надеюсь просто неудачный сабмит

BorisZ: вчера многие еще тестировали чтото - в среднем слабее было сопротивление

BorisZ: а к концу лучшие версии выставили

metahom: это за два часа до конца было. но вообще возможно конечно

BorisZ: у меня утром рано на 20 месте была версия, сейчас она же на 42

BorisZ: после ресабмита

BorisZ: так что все по честному скорее всего, отражена реальная сила примерно

metahom: тогда печаль :(

metahom: странно, все боты запустились с тем же количеством очков что и имели. т.е. это не ресабмит, а дополнительные игры?

metahom: тогда я слажал, что не оставил хороший сабмит :(

wlesavo: ну да, я терся около топ 10, а ща еле влез в 20

BorisZ: metahom если бы оставил удачный сабмит - сейчас бот полз бы вниз, ты бы расстраивался еще больше

BorisZ: а сейчас глядишь вверх пойдет )

metahom: проблема в том что у него низкий винрейт против боттома лиги. прямо с трудом выбирается выше 50-го места. но когда выберется нормально себя чувствует на 30-х местах. и даже добирался до 20

BorisZ: да фиг знает, может просто выборка маленькая, не похоже что игра из разряда камень-нажницы бумага

metahom: ну да, чего себя лишний раз расстраивать. не выйдет так не выйдет

namaska: Кто хочет махнуться кодом

namaska: ?

wlesavo: вообще за это можно бан отхватить случайно

735487: тебе в каких целях?

BorisZ: зачам код то показывать вообще, лучше идею рассказать, если человек не может идею закодить - не помогут сниппеты

BorisZ: а идеи тут бесплатно раздают, только спроси

BorisZ: ну если задачку конечно помнят) если несколько лет прошло то позабывали уж все конечно

BorisZ: наоборот найти бы того кто идеи будет слушать - можно было бы приплачивать как психотерапефту )

BorisZ: если прям код интересует, то поиском на гихабе найдешь решения на все пазлы местные думаю

namaska: на гитхабе ?

BorisZ: угу

namaska: неее , если я буду от туда все копировать то тогда я себя недо программистом чувствовать буду

namaska: мне просто интересны другие решения ,тип как какую-то задачу сделать по другому

namaska: это добавляет опыта

735487: в пазлах после того как решишь можно тоже смотреть чужие решения

wlesavo: да, там много интересных

wlesavo: и обычно перед тем как запостить причесывают

namaska: 40 левл последний ?

wlesavo: последнего теперь нет

wlesavo: раньше был 50 кап

BorisZ: согласен, это полезно, иногда вштыривает прям, ты такой гордый что решил, а там было реально красивое решение

BorisZ: а если не решал сам то и не оценишь

Uljahn: принцип решения важнее кода, угу

wlesavo: ага, накодил 500 строк с классами методами, а там чувак в одном цикле на 50 строк все решает

wlesavo: забавно что #20 место часто меняется, а я +- стабильно на 19 сижу, защитил свою футболочку

Uljahn: длина решения далеко не главное, если автор смог на пальцах расписать алгоритм без гольферских выебонов

Uljahn: я гольферов минусую сразу :)

Uljahn: какая жара в топе однако

Uljahn: и wlesavo с роялем бодается

Uljahn: https://www.codingame.com/forum/t/ocean-of-code-feedback-strategies/175885

wlesavo: Uljahn да не, там без шансов, мне фангел важнее был, но он теперь слишком высоко

Uljahn: постмортемы начались

Uljahn: ну, рояль долгое время топ-1 по сайту удерживал, пока формулу не поменяли, так что почётное бодание

BorisZ: wlesavo напиши постмортем то, интересно

wlesavo: пишу как раз сижу

Uljahn: эх, никто ботов не захайдил

metahom: ну что, можно сказать все?

metahom: обидно, я бота на 37 месте не оставил (((

metahom: wlesavo, поздравляю с майкой :)

amurushkin: гы я похоже закатился на 29 таки )) с 31 где то

amurushkin: хотя там еще сабмиты идут

wlesavo: хехе, спасибо)

Alex.swift: Ого, магус только до бронзы дошел

Alex.swift: wlesavo поздравляю с футболкой :slight_smile:

wlesavo: спс) ща пм будет уже скоро

wlesavo: https://www.codingame.com/forum/t/ocean-of-code-feedback-strategies/175885/9

metahom: а когда мульти откроется не говорили?

wlesavo: вроде говорят что возможно сегодня прямо

wlesavo: но думаю скоро будет инфа достоверная

Alex.swift: поскорее бы уже следующий контест

metahom: ага, только валерьянкой запастись )))

metahom: все таки получил новую ачивку - I have something to say ))))

amurushkin: раньше обещали что чуть ли не автоматом мульти будет сразу и даже в лигу сразу нужную как и было попадаешь

metahom: ну последний контест сразу перенесли на тех же местах что и были. правда через полгода ))

Alex.swift: у кого сколько сабмитов за игру было?

wlesavo: что то в районе 500

metahom: а где посмотреть?

Alex.swift: во время игры можно было в истории, а сейчас не знаю

Alex.swift: ого, у меня 250 где-то

wlesavo: там такая галочка была и рядом циферка

wlesavo: я спамтестил пока не поставил бенчмарку

wlesavo: плюс часто ресабмитил если первые 10 игр не оч

BorisZ: wlesavo отлично написал, я про некоторые моменты даже не задумывался - например мины после сайленса могут быть больнее обычных

namaska: Ребят допустим Есть список a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89].

как вывести все элементы, которые меньше 5.

BorisZ: не навсегда но долго может сидеть занозой, да

namaska: на питоне

namaska: ?

BorisZ: [x for x in a if x < 5]

namaska: спс

namaska: print(list(filter(lambda elem: elem < 5, a))) как вариант

wlesavo: BorisZ это кстати не моя идея, помоему нерчио как-то про это сказал, и я подумал что это стоит того чтобы попробовать прикрутить

BorisZ: читать чаты полезно короче)

wlesavo: ого MCTS даже прикртил чувак

BorisZ: namaska да, тоже ок, но list comprehension - более по питоньи

BorisZ: или по питонячьи

namaska: А что это за игра в которую вы играете ?

Uljahn: :scream_cat:

BorisZ: эйлер одной картинкой сорвал все овации

wlesavo: да, помню еще в марте показывал первую версию визуализатора, но у него еще стата там же, тоже достойно оваций, 42к реплеев

BorisZ: namaska соревнование только что завершилось https://www.codingame.com/contests/ocean-of-code/leaderboard/global

Alex.swift: ого, он и статистику собрал на всех с леги

dabino: nice write up, wlesavo!

wlesavo: спс :slight_smile:

Uljahn: фига сколько сайленс-нольщиков

dabino: а где эта статистика от @eulerscheZahl?

Alex.swift: https://eulerschezahl.github.io/OceanOfCode/ooc_stats.html

BorisZ: ахренеть

wlesavo: я в итоге таргетинг зеросайленса включил обратно, но с панишем в полтора раза всего, впринципе хватало, в первых версиях вообще было сразу x10 на каждое подтверждение

dabino: статистика огонь!

BorisZ: да вобще, нет слов

BorisZ: у меня оказывается 11% невалидных зарядов - кто бы мог подумать

wlesavo: он спойлерил же немного, но я не ожидал что будет 42к игр и на всю легенду

BorisZ: хотя наверное это считается когда все заряжено до упора а юзать нечего

wlesavo: да, там же в начале дисклеймер небольшой, написано что так

BorisZ: чукча смотреть картина, инструкция читать для гелолг )

Alex.swift: я просто остаток на сонар скидывал, вроде не возникало таких ситуаций

wlesavo: я тоже думал что не возникает

wlesavo: но тут статистика не врет

wlesavo: около процента есть все равно

Alex.swift: жаль она голд не захватывает)

dabino: сколько мин pb4 ставил - 18 за игру

Alex.swift: и только одну тригеррил)

Uljahn: так вот из-за кого серваки лагали)

Uljahn: эйлер реплеи выкачивал

BorisZ: да, сайленс нольщиков дофига, и единичники встречаются

amurushkin: я пробовал менять сайленс на другой но с 0 все равно лучше играл

BorisZ: можно было вполне абюзить таких - в оценке стрелять\взрывать когда например

BorisZ: я сайленс обычно по своему посчитанному пути делал, поэтому у меня 1 большинство

BorisZ: только статистику надо собирать

amurushkin: я для 0 сайленса у себя коэффициент урона чуть подымал. чтобы туда приоритетнее стрелял

BorisZ: тутубалин выкладывал реплеи когда он чуть не с первых ходов торпедой херачил - по вероятностям

wlesavo: ну я так и делал, просто веса раздавал всем сайленсам, еще когда первый раз ейлер светил статистику решил что можно захардкодить примерно

BorisZ: да, годная идея, я пока статистику не глянул - не верил )

BorisZ: причем есть люди которые сайленс 0 совсем не использовали

BorisZ: либо не знали что так можно, либо точно знали куда им надо плыть )

BorisZ: и поскорее

wlesavo: я после бронзы тоже отказался, и специально не использовал, думал люди будут таргетить, потом добавил просто с вероятностью где-то 40-50 процентов

amurushkin: я пробовал раздать веса и потом их корректировать в зависимости от попал/не попал. но не получилось закодить чтобы работало. в итоге сделать просто такие веса от балды практически float silence_priority[5] = {1.01, 1.0098, 1.0, 1.0, 1.0078};


amurushkin: даже не знаю помогло ли это

wlesavo: небольшое слишком различие

BorisZ: я бы объеденил в 3 группы 0, 1 и остальные, по ним бы собирал

wlesavo: у меня чтото типа 1.5 1 1.8 0.5 0.4

735487: ну вот в мульти надо будет потестить наверное другие

wlesavo: 0.8 для 2

735487: ну я делал по сути 0,1 это одна группа и остальные. для 4 еще поднял потому что в реплеях его часто видел

amurushkin: у меня они еще больше 1 потому что я их умножал на предполагаемый порог дамага. а там итак цифры маленькие

amurushkin: да возможно из за того что разница у моих коэфов маленькая то оно ничего может вообще не давало

amurushkin: разница похоже была только совсем при равных вероятностях

wlesavo: для 4 я уменьшал чтобы не стрелять сильно издалека в неопределенную цель, не уверен что это оптимально, может наоборот

Alex.swift: во что сейчас играете вне контестов?

namaska: как на питоне поменять 2 половины слова местами , скажем было zyxabc а стало abczyx

namaska: ?

Uljahn: s = "zyxabc"; res = s[len(s)//2:] + s[:len(s)//2]

Uljahn: как-то так, режем пополам и склеиваем

namaska: спс

namaska: (Знающие пайтн поймут)

namaska: я настолько ленивый ,что место того чтобы скачать нормальный редактор кода,

namaska: Я пользуюсь IDLE :))

namaska: который установился вместе с питоном

namaska: автоматом

735487: лишь бы тебя устраивало

Uljahn: вместе с кондой спайдер устанавливается, тоже норм

Uljahn: но мне VSCode всё же больше нравится

wlesavo: офигеть, нерчио профессиональный игрок в старкрафт 2

Uljahn: да, он говорил уже

wlesavo: эт какими путями интересно

wlesavo: я пропустил

Uljahn: надоело против ботов играть)

Uljahn: наверное

ashelkov: думал просто никнейм как у игрока

tutubalin: я в итоге 88-й (

Alex.swift: ого, нот бед https://liquipedia.net/starcraft2/Nerchio

Uljahn: хм, его прошлая команда продинамила неслабо, вот он видимо и решил с е-спортом завязывать

Uljahn: https://www.twitlonger.com/show/n_1sr36un

Alex.swift: прям известным был. За последние пару лет активности нет

metahom: про игроков в старкрафт целые страницы биографии делают ))

Alex.swift: про всех киберспортсменов. Там же такие бюджеты

Alex.swift: У ValGrowth целый блог о турнирах на ботах https://valgrowth.hatenablog.com/archive

metahom: на японском

Alex.swift: переводчик страницы норм перевел вроде

Alex.swift: из Японских игроков прям несколько таких нашел

Alex.swift: такуми вообще в день по 10 твитов о своем боте публиковал что он изменил)

735487: расскажите ему о гите :)

wlesavo: ух ты, ачивки подъехали

Razzeeyy: божечки в CSB просто поменял формулы ускорения и противодействия инерции и ща из серебра походу на изи выйду О_о

Razzeeyy: даа я в золотеее

Razzeeyy: И чё я 4 года назад не написал этот код О_о легко же О__О

MadKnight: красота

MadKnight: го теперь в легу

Razzeeyy: нууу это ещё посмотрим чё там в голде я так понимаю в золоте уже вторую машинку дают?

MadKnight: ага

Razzeeyy: а вот это всё меняет, ппц как...

MadKnight: почемуц

MadKnight: просто занеси свой код в цикл

Razzeeyy: ну как минимум это

Razzeeyy: или

Razzeeyy: надо придумывать более умные страты

MadKnight: ну более сильные страты всегда надо придумывать

Razzeeyy: теоретически там даже без нейронок ещё потенциал очень большой

Razzeeyy: как минимум на деревьях принятия решений можно неплохо уехать, я думаю

735487: а вы кстати вкурсе что мульти уже есть? и положение походу такое же как было на конец контеста. я на том же месте

735487: только код чистый ))

wlesavo: уже убрали, чето видимо сломано было

amurushkin: ну не знаю что там убрали я только что запустил ))

wlesavo: а ты обнови страницу))

wlesavo: а не

wlesavo: в иде доступно

wlesavo: история сабмитов сохранилась даже

Uljahn: с историей сабмитов круто придумали, зачот!

Uljahn: ещё бы код сохранялся последний

Uljahn: а то я как-то не успел засабмитить, время вышло и gg

namaska: А как создать текстовый документ определенного типа, например я нажимаю создать > текстовый документ ,но я хочу чтобы это был текстовый документ типа Python File

namaska: rfr 'nj cltkfnm

namaska: *как это сделать ?

kotobotov: из виндовса через контекстное меню ты можешь создавать только файлы определенного типа

kotobotov: лучше зайди в редактор, и там сохрани фаил того типа которого тебе надо

Uljahn: или создай txt и через переименование измени расширения файла на py

735487: прикол какой то сабмитнул в мульти. там все игры против nerchio только идут ))

wlesavo: да, против тех кто тоже сабмитнул видимо

735487: хреновенько

wlesavo: хочешь тоже сабмитну будут все игры против меня? )))

735487: интересно сколько очков так можно набрать против 1 игрока :)

[CG]Nick: https://www.codingame.com/multiplayer/bot-programming/ocean-of-code

735487: [CG]Nick: hi. there is a problem with submitting on multi. it plays only with 1-2 players who just submitted

metahom: amurushkin, it's fine now

metahom: just re-submit

wlesavo: куыги зкщифидн цшдд рудз

wlesavo: oh

wlesavo: sry

735487: не знаю у меня против nerchio шурует до сих пор

[CG]Nick: @amurushkin Yes, there was a problem few minutes ago, it should be fixed

wlesavo: ой, это наш чат

metahom: пробовал ресабмитнуть?

735487: уже принципиально хочу дождаться до 100%

metahom: я второй раз запустил и все норм

metahom: я получил свое 49е место и меня отпустило )))

wlesavo: меня чет запушило от ваших сабмитов

735487: ща может на играх против nerchio в топ войду ))) хотя судя по всему выше чем был он не собирается

735487: [CG]Nick: I have now error after click on join button An error occurred (#-1): "internal error". Please contact codersHS@codingame.com


Alex.swift: ресабмитнулся на 95, а при общем подсчете 112 был. Мелочь, а обидно)

Uljahn: обана, и последний код появился в ide

Uljahn: вообще сказка

metahom: а чего до конца контеста не ресабмитнул?

Uljahn: так он не рабочий, я рефакторил как раз, а в воскресенье полдня с температурой провалялся

Alex.swift: не заходил со вчера просто

Uljahn: а, вы о своём)

metahom: зашел бы )))

metahom: я сегодня с 6 утра сидел

Alex.swift: у меня код вроде не совпадает с засабмиченным

Alex.swift: последним

Uljahn: видимо, последние правки таки сохранили

735487: я вон вроде на 22 ресабмитнулся )) а в мульти вообще войти не могу

735487: а это у меня почти все игры против nerchio ))

wlesavo: меня на 8 запушили с 19го как-то, не хочу ресабмитить теперь

735487: это из за багов похоже

735487: у меня вообще не работает теперь ))

tutubalin: namaska 1. в настройках проводника включи "показывать расширения файлов" 2. после создания текстового файла нажми "переименовать" и поменяй расширение на .py

735487: у меня одного мульти не работает?

Uljahn: у меня работает

tutubalin: ну что-то странное точно творится

tutubalin: зашёл в UTTT, у меня там 22 боя всего

tutubalin: но зато каких!!!

Uljahn: а, мульти вообще

tutubalin: правда, против трёх соперников только. с двумя сыграл по разу, остальные бои против одного и того же

735487: ну я остальные не проверял но океан не пашет

735487: написал на мыло которое в ошибке указано

Alex.swift: (╯°□°)╯︵ ┻━┻

Alex.swift: ┬──┬◡ノ(° -°ノ)