[Logo] Форум DL
  [DL]  Back to home page 
Forum Index ->Олимпиадное программирование ->Тактика на командных олимпиадах
Author Message
Zhuniory i senor

Topics: 1
Messages: 9

My Profile
USACO 2020 January

b1, b2, s2 - Саша
b3, s1, s3 - Лёша
g1 - Дима

b1 +
b2 +2 (выдало WA, когда на самом деле выходило за границы массива)
b3 +1 (Лёша забыл про то, что нужно добавлять расстояние, пройденное справа)
s1 +2 (сначала не добавлял остатки, а потом был выход за границы (из-за этого брало элементы, которых нет) )
s2 +2 (одна посылка была случайной(WA1 вроде не должно считать за попытку), на второй - Саша рассчитал не так асимптотику )
s3 +4 (все минусы либо неправильная реализация, либо неверная идея)
g1 +

Ошибки:
1) Саша не сдал g3, потому что, когда в листе в НДО добавлял значение, он не брал минимальное из текущего и нового, а ставил новое значение
2) Если бы Саша рассказал Лёше идею, может быть эту ошибку нашли и успели бы сдать g2, так как там надо было соптимайзить память.
3) Саша один раз реализовывал s3 и словил тогда WA3, ошибка была в том, что надо было после всех объединений для каждой вершины в СНМ поставить "правильный" корень
Zhuniory i senor

Topics: 1
Messages: 9

My Profile
USACO 2020 February

Саша - b1, b2, s3, g1
Лёша - g2
Дима - b3, s1, s2

b1 +2 (неправильно прочитал условие, а точнее я думал, что нужно любой треугольник построить)
b2 +1 (думал, что жадник зайдёт)
b3 +
s1 +
s2 +
s3 +
g1 +1 (забыл учесть одно условие )
g2 +

Саша чувствовал с самого утра себя уставшим, поэтому были лишние посылки, а на самом деле у него было пониженное давление( скорее всего из-за переутомления ). Был бы он в хорошем состоянии, сдали б и девятую задачу
Zhuniory i senor

Topics: 1
Messages: 9

My Profile
USACO 2020 March

Саша - b1, s2, s3, g3
Дима - b2, b3, s1, g1

b1 +8 (7 попыток были с неправильным жадником, поменял на диху по ответу - зашло)
b2 +1 (---)
b3 +9 (Саша писал кучу неверных реализаций, дал Диме написал - сдал)
s1 +
s2 +
s3 +2 (забыл про один случай)
g1 +
g3 +8 (выход за границы массива был, хотя выдавало WA, когда должно RE)

Ошибки:

1) Не делать лишних посылок, когда нервишки пощикотаны
2) Когда выдаёт WA, надо учитывать вариант, что может быть
Zhuniory i senor

Topics: 1
Messages: 9

My Profile
Питерская командная 12 октября 2014-2015 гг усложнённая

Саша - B, C, G, I, J
Дима - E, H

B +
C +2 (одна посылка - не тот файл, вторая - ML)
E +3 (Дима пытался играть с даблами и решить таску за O(1), но пришёл Саша и сказал, что O(n ^ (1 / 6)) - это немного)
G +4 (из-за невнимательности не поставил вычитание единицы по модулю)
H +
I +5 (типичная задача на реализацию, куда же мне без ошибок)
J +1 (ограничения)

Ошибки:

1) Всегда перепроверять, правильные ли ограничения
2) Если сомневаешься, что будет ML, то лучше не посылать
Zhuniory i senor

Topics: 1
Messages: 9

My Profile
Я(Саша) подумал над тактикой. Слушал лекцию Um_nik'а(Алексея Данилюка) по поводу командной работы. Думаю, что некоторые вещи надо попробовать, если нам не подойдёт, то мы выбросим их.

Что самое главное, как я считаю, в тактике должно быть:

1) Надо экономить комьютерное время(ведь есть только один комп на всю команду)
2) Надо общаться постоянно
3) Надо знать сильные и слабые стороны тиммейтов
4) Перед тем, как сесть писать код(неважно, будь-то брут для стресс-тестов или фулл), продумайте его за столом, а после уже идите писать

5)
а. Дебажить код на его распечатке(если нужно вывести значения каких-то переменных(output-debug), то на компе вывели и распечатали)
б. Если нашли баг, то НЕ надо его сразу исправлять и сабмитить, а поищите ещё

6) Если не согласны с пунктом 5, читайте пункт 1
7) Того, кто сидит на компе, нельзя беспокоить, ибо читайте пункт 1
8)
а. Тот, кто придумал идею, не обязательно пойдёт её писать, ибо читайте пункт 3
б. Если есть какие-то идеи, расскажите их всем тиммейтам
в. Если есть хоть какие-то наброски, их тоже рассказывать тиммейтам, так как кто-то может что-нибудь дополнить своё и придумаете фулл вместе

9) После любого сабмита, посмотреть в таблицу и записать, какие таски сдаются. Если кто-то может как-то изменить мораль, посмотрев в таблицу(к примеру, у меня есть такая слабость), то посмотреть и записать должен будет другой человек
10) Когда идёт последний час, надо обсудить задачи, которые хотим сдать за этот последний час, а остальные отбросить и больше не трогать
11) Надо писать читабельный код(не только для себя, но и для своих тиммейтов), так как если не вы будете читать код, а ваш тиммейт, он должен уметь читать его.

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

1) Использовать только те макросы(дефайны, тайпдефы), которые использует вся команда
2) Договориться, когда использовать парное программирование(в последний час или в любое время).
3) Ввести условные обозначения на условиях задач
4) После контеста обсуждать свои ошибки, в том числе и не соблюдение тактики
Zhuniory i senor

Topics: 1
Messages: 9

My Profile
Питерская командная 25 октября 2014-2015 гг усложнённая

Дима - B, H, J
Саша - D

B +1 (---)
D +5 (первые посылки были с неожиданным ML, заменил на ДФ и соптимайзил некоторые куски кода - зашло)
H +
J +1 (неправильные начальные значения для ДП (неверный inf))

Ошибки:

0) Была идея на A, но с кривой реализацией.
1) Саша с Димой пытались придумал рекурсивное ДП на Е, но оказалось, что там просто река без ДП.
2) На последнем часу не соответствовали тактике, то есть Саша с Димой пошли писать С, а Лёша думал над багов в А. Надо было скоординироваться на одной задаче.
3) На С была правильная идея(как у авторов), но Саша долго искал багу.

Вывод:

На последнем часу координируемся на ОДНОЙ задаче.
Mihail Dolinskiy

Topics: 1645
Messages: 39603

My Profile


Жуниоры и Сеньор:

Питерская командная 25 октября 2014-2015 гг усложнённая

D +5 (первые посылки были с неожиданным ML) 

А разве память нельзя посчитать или хотя бы оценить в худшем случае?
Мне кажется надо научиться.
Zhuniory i senor

Topics: 1
Messages: 9

My Profile
Всегда считаю память перед тем, как пойти писать код. ML был 512 МБ , а я насчитал ~280 МБ. Возможно из-за тяжёлых операций(в виде взятия по модулю) и выдало MLE
Aleksandr Losev

Topics: 27
Messages: 94

My Profile
Я всё-таки дорешал С-шку.
Ошибка была в том, что когда я фиксировал макимальный в одном поддереве, а код считал, что минимальный будет в другом поддереве, а на самом деле это не так.
Mihail Dolinskiy

Topics: 1645
Messages: 39603

My Profile
Это здорово.
Но там ещё 4 нерешённых задачи у Вас осталось.
Надо ВСЕ дорешивать, чтобы прогрессировать.
Aleksandr Losev

Topics: 27
Messages: 94

My Profile
И так.
Я дорешал F(конструктив) и I на алгоритм Диница(поиск максимального потока). Считаю, что G не особо будет полезной, так как 2-SAT очень редко встречается на ВКОШПе(было всего 1 раз, а если будет и на этом, то её мало кто сдаст) и в решении на неё есть какие-то страшные приколы.

I стала моей первой задачей, решённой потоками. Прочитав её, я сразу понял, что там диха по ответу и как-то потоки (с единичной пропускной способностью на рёбрах) написать для проверки, но не знал как, поэтому полез в код авторов. Они достраивали граф с помощью второго параметра time, который сказан в условии.
Zhuniory i senor

Topics: 1
Messages: 9

My Profile
Питерская командная 1 октября 2016-2017 гг

Саша - A, F, J, E
Лёша - B, I, H
Дима - C

A +
B +7 (2 попытки - неверные идеи, последние - неправильно строил перестановку А)
C + (WA1 на ВКОШП не считается за попытку)
E +
F +
H +
I +
J + (показывает +1 из-за багов dl)

Ошибки:

1) Слишком много времени потратили на дебаг С
2) Аналогично, с В
3) Кроме того, как мы сдали 8 задач, у Саши была правильная идея на G, но не хватило времени
Zhuniory i senor

Topics: 1
Messages: 9

My Profile
Суммарно 871 штрафа у нас получилось
Andrey Kostyanoy

Topics: 120
Messages: 244

My Profile
WA 1 на ВКОШП считается за попытку. CE не считается и RE 1 (по поводу RE 1 не уверен).
Aleksandr Losev

Topics: 27
Messages: 94

My Profile
Разве? Если это так, то у нас 891 штрафа
 
Forum Index ->Олимпиадное программирование ->Тактика на командных олимпиадах
Time:0,109