
Aragaer
12.12.2016
00:12:18
ыых, волшебная оптимизация и теперь прога работает за 7 с половиной секунд
убрал структуры, переписал через биты. Меньше 7 секунд
http://pastebin.com/rGCjAzEX
на моем компе отрабатывает за 6.1-6.2 секунды

Google

Slowpoke
12.12.2016
03:53:45
Крч. Я решил свою проблему тем, что оставил комп на ночь. (да, гениально)
Потом он включился(с всей подключенной оперой) и снова не видел планку. Я её переставил. Комп не включался. Переставлял. Комп не включался. Выдернул её вообще и вуаля. Комп заработал.
Теперь у меня другой вопрос... Что может быть с этой планкой или, мб, проблемы с разъёмом?

Dmitri
12.12.2016
04:01:19

alert
12.12.2016
05:03:54

?Томат?
12.12.2016
05:53:15

Aragaer
12.12.2016
06:03:22
сегодня йолка простая, я 333-й в общем зачоте
надо только внимательно смотреть

Maxim robox
12.12.2016
06:08:50

Aragaer
12.12.2016
06:13:42
в инпут, который тебе дают
короче там очередной ассемблер, так вот инструкция cpy может копировать из регистра, а jnz может сравнивать с константой
ыыыыы

Yokai
12.12.2016
06:14:28
Есть боты для подключения оповещений о gitlab, github и bitbucket-коммитах для чатов, чтобы неадмины не могли ими пользоваться?

Aragaer
12.12.2016
06:14:52
после сегодняшней йолки страничка с выбором паззла анимируется - там монорельс начинает ездить

pulat
12.12.2016
06:17:07
Кто нибудь скомпилировал используя pypxlib? У меня после компиляции выдает ошибку no named px

Google

Maxim robox
12.12.2016
06:18:20
А не. Кажется, мой косяк.

Aragaer
12.12.2016
06:21:03
я в итоге для простоты сделал cpy и cpy2, jnz и jnz2. Первое для нормальных случаев, cpy2 регистр в регистр, jnz2 - безусловный переход

Roman
12.12.2016
06:21:15
Гайс, скажите плиз. Вот в студии есть плагин на проверку ошибок в при написании слов по-русски. Есть ли похожий для пичарма?

Maxim robox
12.12.2016
06:23:01
Блин. Я тупанул. Там, оказывается, количество шагов довольно большое, а я не дожидался выполнения.

Dmitri
12.12.2016
06:23:03

Johnnie
12.12.2016
06:24:07
@robox @aragaer маньяки)))

Maxim robox
12.12.2016
06:24:59
@aragaer у тебя для part2 долго выполнялась программа?

Pavel
12.12.2016
06:25:13

Aragaer
12.12.2016
06:25:21
у меня на С. Если отключить отладочную печать, то быстро
но с отладочной печатью видно было, что медленно-медленно тикает регистр d и когда дошел до нуля - ок

Maxim robox
12.12.2016
06:25:57
Чёт у меня уже пару минут висит.

Roman
12.12.2016
06:26:04

Aragaer
12.12.2016
06:26:07
$ time ./santa12 < inp12
9227647
real 0m0.171s
user 0m0.168s
sys 0m0.000s
это без отладочной печати
```9227647
real 0m40.256s
user 0m11.760s
sys 0m28.472s
а это с ней
печатаю на каждом шаге все 4 регистра и номер текущей инструкции

Maxim robox
12.12.2016
06:27:50
О. Только сейчас закончилось.
Видать, алгоритм у меня слишком жирный.

Google

Pavel
12.12.2016
06:28:13

Aragaer
12.12.2016
06:28:31
и видно, что почти все время я в цикле 9-10-11, там происходит декремент регистра b, а когда уменьшится, то декрементит d и снова
$ time ./santa12 < inp12 > out12
real 0m6.616s
user 0m6.204s
sys 0m0.404s
$ ll -h out12
-rw-rw-r-- 1 aragaer aragaer 732M дек 12 09:28 out12
$ wc -l out12
27683137 out12
27 миллионов инструкций 8)

Maxim robox
12.12.2016
06:31:25
А вот со вчерашней задачкой у меня всё ещё проблемы. Уже получается найти решения, но они не минимальные и не подходят как ответ.

Aragaer
12.12.2016
06:31:53
ну я в итоге сделал волновой поиск и это уже достаточно быстро
6-7 секунд и основные тормоза тоже понятно где
можно еще ускорить, но надо либо пару гигов места, либо реализовать очередь
... и тогда один гиг места 8)

Maxim robox
12.12.2016
06:32:48

Aragaer
12.12.2016
06:33:09
я шел от финиша к старту, хотя без разницы

Maxim robox
12.12.2016
06:33:35
Чёт я пока не могу представить, как этот алгоритм туда применить.

Aragaer
12.12.2016
06:33:52
финиш помечаю нулем. Затем от всех позиций, где ноль, перебираю все соседние и ставлю там 1, если ничего еще не стоит
затем для всех, где 1, ставлю 2
и так пока не проставлю для старта

Maxim robox
12.12.2016
06:34:20
Финиш и старт это состояния завода?

Aragaer
12.12.2016
06:34:38
да
http://pastebin.com/w6gR0dcF - вот такой у меня получается вывод
основное время тратится на поиск того, вокруг чего соседей искать.

Google

Aragaer
12.12.2016
06:35:26
потому что это пара сотен тысяч байт на гигабайтном массиве
все состояние завода во второй части описывается 30 битами. В первой 22
по одному байту на каждое состояние завода это получается ровно гиг
в результате оптимизаций - когда у меня уже был правильный ответ - я стал делать так, что 7 бит в байте это назначенный номер волны, 127 это "бесконечность" - еще не вычислено, а старший бит проставляется для недопустимых состояний
хм..

Maxim robox
12.12.2016
06:40:45

Admin
ERROR: S client not available

Mihail
12.12.2016
06:40:57
/pidor@SublimeBot

A
12.12.2016
06:41:25
/pidor@SublimeBot

Aragaer
12.12.2016
06:42:43
не, каждый инт от 0 до 2^30-1 это состояние завода
в массиве такого размера каждый байт помечен - старший бит 0, если такое состояние норм, 1, если некорректно

Mikhail
12.12.2016
06:43:34
Поржал

Aragaer
12.12.2016
06:44:07
остальные биты единицы - "мы еще не знаем, сколько надо шагов, чтобы добраться от этого состояния до финиша", кроме финиша - в нем ноль.
дальше перебираю все состояния, соседние с финишем - их ровно 35 штук. Им выставляю значение 1.
то есть в гигабайтном массиве у 35 байтов значение становится 1

Artem
12.12.2016
07:02:44

Maxim robox
12.12.2016
07:03:19

Aragaer
12.12.2016
07:16:59
/me решил уже успокоиться и перестать оптимизировать 11-ю

Maxim robox
12.12.2016
07:18:13

Aragaer
12.12.2016
07:19:32
ща в душ, пожрать, потом на работу

Google

Aragaer
12.12.2016
07:53:16
ведь вроде сказал себе - хватит оптимизировать эту хню. Нет же, пока в душе был еще оптимизацию придумал и еще секунду убрал

Levent
12.12.2016
08:14:37
?

Aragaer
12.12.2016
08:23:21
о, еще полсекунды долой

Subbotin
12.12.2016
08:25:55
твой работодатель в чатике не тусит?

Roman
12.12.2016
08:28:31

Subbotin
12.12.2016
08:31:15
лучше пусть браузеры оптимизирует.

Ssi
12.12.2016
08:34:12
а вот уже в браузерах мы игр и наделаем

Roman
12.12.2016
08:34:25
не надо этот кал
как браузерные игры

Ssi
12.12.2016
08:34:43
не, ну а чо

Roman
12.12.2016
08:34:43
самое убогое что могли придумать
анальный донат для хомячков
брррр

Subbotin
12.12.2016
08:34:58
я уже месяц играю в куки кликер