[Logo] Форум DL
  [DL]  На главную страницу 
Индекс форума ->Олимпиадное программирование ->Тактика на командных олимпиадах 1, 2, 3, ... 8, 9, 10, 11
Автор Сообщение
Михаил Долинский

Темы: 1982
Сообщений: 47183

Мой профиль


Владислав Хамков:

Ругаемся:
Сегодня L-ку сдали с 100500-й попытки, т.к. Егор плохо объяснил Владу чо делать.
I-ку сдали с 2-й попытки, т.к. Я в одной из формул потерял минус.
F-ку сдали с 100500-й попытки, т.к. там была dp-шка
и у нас в её коде было много выходов за границы массивов,
была кривая сортировка, путаница в индексах
(что-то индексировалось с единицы, а что-то с нуля), ошибки на единицу,
в общем плохо закодили 


1. Егор – старайся точнее (полнее) объяснять Владу Бортенко, что делать.
2. Влад Бортенко – кодируй чуть медленнее (возможно), но с гарантией без таких ошибок
(выход за границы, кривая сортировка, путаница в индексах и т.д.)
В идеале – сдавать с первой отсылки.
3. Хорошо, что Влад Хамков эффективно помогал Бортенко сдавать задачи.
Но в это время он не работал над придумыванием решений.
Желательно, чтобы Хамков привлекался к отладке как можно реже (в идеале - никогда)
4.Индивидуальные тренировки
Бортенко – кодинг надо тренировать – можно тематический – в Методах алгоритмизации, можем обсудить, где конкретно
Короткевич – суффиксные массивы (к кодингу можно Бортенко привлекать)
Хамков – надо какую-то новую теорию узнать? Что хочешь делать в рамках индивидуальных тренировок?


Мне также кажется полезным дорешать не сданные сегодня задачи 2021 года
(но сданные хоть кем-то на оригинальной олимпиаде)

Возможно в рамках индивидуальных занятий - как делали с годами 2020,2019, 2018 в этом же форуме.
Егор и Влад Хамков придумывают решения, Бортенко кодирует и сдаёт.
Егор Короткевич

Темы: 0
Сообщений: 53

Мой профиль
Вопросы прогульщику:
1. Задача G - почему формула площади именно такая
2. Задача A - вообще не понятно что происходит после рассмотрения частного случая, а именно:
что хранит в себе массив ml
почему мы считаем его линейно
каким образом мы за O(1) можем определить является ли линия образуемой матрицы верхней нижней или средней
Короче вообще все не понятно и было бы круто если бы ты перевел решение полностью
3. Задача B - не понятно откуда взялись x и a и как они связаны с решением
ГГУ-2

Темы: 0
Сообщений: 10

Мой профиль
ПРАВИЛА
1.Егор и Влад Хамков придумывают, а Влад Бортенко пишет.
Но если Егор и Влад Бортенко заняты отладкой, то Владу Хамкову можно самостоятельно написать задачу.
2.Если у Влада Бортенко ничего не работает, то нужно подсесть и помочь.
Но если исправление занимает много времени, то желательно распечатать своё решение и разбираться с ним без компа, а Хамкову дать писать задачу.
3.Исправление приоритетней написания новой задачи.
Но исправление не приоритетней написания, если новая быстрее пишется (Исключение: больший шанс сдать старую задачу со следующей отправки).
4.Не отвлекать Влада Хамкова, пока он пишет.
5.Егор обсуждает сложные задачи с Владом Хамковым, прежде чем Влад Бортенко пишет.
ГГУ-2

Темы: 0
Сообщений: 10

Мой профиль
ICPC NEF 2017:
E(+2) - Влад Бортенко не до конца понял важные моменты.
B(+1) - Егор опечатался в случаях.
С(+2) - Базовая ошибка в коде, не очищали вектора после каждого тесткейса.
D(+1) - Отправляли на распечатку.
Михаил Долинский

Темы: 1982
Сообщений: 47183

Мой профиль
Я всё-таки не понял, почему Вы решили так мало задач?
Егор Короткевич

Темы: 0
Сообщений: 53

Мой профиль
NERC 2017
A - решить деревом\quadtree\еще чем-нибудь
F - докодить
I - мое эмпирическое решение
выбираем случайный индекс и сравниваем со всеми числами в (L, R) тем самым определяем его значение
Поддерживаем граф для определения (L, R):
1. начальные значения для каждого индекса (0, n - 1)
2. выбираем случайный индекс bi и сравниваем его со всеми числами в (L[bi], R[bi]), c = L[bi]
3. если a < b то с++
4. если a > b то ничего
5. в конце определяем b = с и пересчитываем L и R для всех чисел от (L[bi], R[bi]) как (a < b)? (R[ai] = min(R[ai], b - 1)) : (L[ai] = max(L[ai], b + 1))
учитываем что мы не можем сравнивать выбранный индекс с самим собой и с индексами четность которых совпадает с данным
L - мое решение
нужно научиться быстро находить путь от вершины до другой вершины (центроидка возможно)
после это проходим от вершины до другой вершины помечая все вершины по пути
Рассмотрим 3 случая:
1. вершины начала и конца помечены одинаково - идем дальше
2. вершины начала и конца не помечены - идем по пути и помечаем вершины(если встречаем вершину помеченную цветом то проверяем что наш путь будет иметь в себе начало и конец пути данного цвета(если встречаем вершину помеченную цветом второй раз - выходим с ответом No))
3. вершины помечены разными цветами - выходим и говорим No
4. только одна вершина помечена цветом - проверяем что эта вершина является концом или началом пути данного цвета (иначе No) идем по пути если встречаем не этот цвет выходим с No
J - авторское
Напишем дейкстру и будем определять кратчайший путь от 1 до n содержащий не более k ребер используя x
x - то на сколько мы уменьшаем длину всех ребер, также мы не можем уменьшить длину ребра ниже 0
изначально x = 0, дальше оно будет равно длине следующего минимального ребра (отсортируем ребра по длине и просто пройдемся с меньшего к большему)
1. для каждого из значений x = 0, e1, e2, e3 ...
2. укажем e1 = max(0, e1 - x), e2 = max(0, e2 - x), e3 = max(0, e3 - x) ...
3. посчитаем дейкстру
4. выберим кратчайший путь содержащий не более k ребер
Егор Короткевич

Темы: 0
Сообщений: 53

Мой профиль
NERC 2017 Tests
Problem A:
8
2 0 -10
1 0 100
2 0 -1
2 0 0
2 0 1
1 20 1
2 19 1
2 20 1
----------
-1
-1
-1
2
-1
6

10
1 0 1000000000
1 2000000000 10000000
1 2020000000 100000
1 202020000 10
1 202020020 10
1 202020050 3
2 -50000000 -50000000
2 2020000002 3
2 202020025 5
2 202020051 0
----------
1
3
5
-1

1
2 0 0
----------
-1

Problem F:
6
-1 -1 2
-3 -3 2
-2 -3 2
-3 2 2
5 -5 5
5 -4 5
----------
Count = 1
Count = 3
Count = 2
Count = 2
Count = 2
Count = 1

Problem I:
6
---------
array:
3 1 5
2 6 4

1
---------
array:
1

2
---------
array:
1
2

3
---------
array:
1 3
2

5
---------
array:
3 1 5
4 2

Problem L:
1 3
1 1
1 1
1 1
--------
Yes

2 3
1 1
1 2
2 2
--------
No

2 2
1 1
2 2
--------
Yes

9 3
1 3
4 3
5 3
1 2
2 9
3 6
8 9
10 9
2 7
2 6
1 3
8 10
--------
Yes

9 4
1 3
4 3
5 3
1 2
2 9
3 6
8 9
10 9
2 7
2 6
1 3
3 4
8 10
--------
No

9 2
1 3
4 3
5 3
1 2
2 9
3 6
8 9
10 9
2 7
9 9
8 10
--------
Yes

Problem J:
3 3 2
1 2 1
2 3 1
1 3 3
--------
2

3 3 1
1 2 1
2 3 1
1 3 3
--------
1

3 3 1
1 2 1
2 3 2
1 3 3
--------
2

3 3 2
1 2 2
2 3 2
1 3 3
--------
3

4 5 2
1 2 10
1 3 12
4 2 12
3 4 10
3 2 4
--------
20

4 5 3
1 2 10
1 3 12
4 2 12
3 4 10
3 2 4
--------
22
Михаил Долинский

Темы: 1982
Сообщений: 47183

Мой профиль
Полуфинал 2022
Результаты

37-ое место, 5 решённых задач.
С 5 задачами команда BSUIR-1 (27-ое итоговое место) прошла в финал.

А в момент заморозки результатов (за час до конца олимпиады) GSU2 была на 24 месте, 11-ое среди вузов, и это было в зоне финала (12 вузов проходят в финал)

1	MIPT: Yolki-palki (Nagibin, Mustafin, Evteev)	        +1	?2	+2	+	+	+	?1	+	+1	.	+	.	8	800
2	HSE: FFTilted (Kudryashov, Babin, Romashov)	        +1	+1	?3	+	+	+	?1	+	+1	?2	+	.	8	852
3	Belarusian SU 1 (Klimasheuski, Paliukhovich, Dzenhaliou)+	+	.	+1	+	+	.	+1	+2	?1	+	.	8	971
4	SPb ITMO: pengzoo (Iakovlev, Perveev, Golikov)	        +	+	?1	+	+	+	.	?6	+2	.	+	.	7	681
5	SPb SU: Urgant Team (Grigoryev, Karpovich, Ivanov)	+	+	.	+	+	+1	?1	?3	+1	.	+1	.	7	739
															
9	Kazakh-British TU:  (Kanatuly, Altybay, Tursynbay)	+1	+	.	+	+	+	.	.	?2	.	+	.	6	577
13	Innopolis: U A (Hakimiyon, Hokimiyon, Ahmed)	        +5	+	.	?1	+	+2	.	?4	+3	.	+1	.	6	811
14	SPb HSE: Just3Keks (Bukov, Mosin, Epifanov)	        +	?1	.	+	+1	+	.	-2	.	.	+1	.	5	365
22	BSUIR: #1: So stuffy (Loseu, Halukh, Markavets)	       +3	?2	.	+	+1	+	.	.	.	.	+2	.	5	625
23	AITU: 1 (Muratov, Aliaidar, Kamzabek)	               +1	+3	.	?1	+	+	.	?11	.	.	+4	.	5	677
24	GSU: -2 (Korotkevich, Bortenko, Khamkou)	       +5	.	.	.	+2	+2	.	+5	.	.	+2	.	5	846


К сожалению
GSU2 за последний час не сдала ни одной задачи
А многие соперники - сдали, и сравнявшись с GSU2 по числу задач, обошли за счёт меньшего штрафного времени.

Тем не менее, это лучшее выступление ГГУ всех времён
Ну или почти

Напомню состав для истории
Бортенко Влад     ПМ-12
Короткевич Егор   ПО-22
Хамков Влад       ПИ-21  

Михаил Долинский

Темы: 1982
Сообщений: 47183

Мой профиль
Предлагаю на обратной дороге обсудить варианты тренировок, дату возобновления, периодичность

Если, конечно, ещё осталась цель попасть на финал

- GSU2 на Codeforces
- дорешивание полуфинала 2022
- решение четвертьфиналов с разборами (по 2 захода по 5 часов + дорешивание )
- решение полуфиналов 2015, 2014 … - без авторских описаний (при необходимости на CF можно спросить)
- решение финалов тоже по два захода + дорешивание

- перерешивание полуфиналов 2022-2016
- личные раунды на CF

- разработка технологии и средств тестирования решений, гарантирующих сдачу с первой отсылки

Возобновляем с 1-го февраля?
2 раза в неделю в СШ 27 – среда, воскресенье
CF-раунды можно по скайпу пытаться решать из дома, командой, но не собираясь в одном месте
Михаил Долинский

Темы: 1982
Сообщений: 47183

Мой профиль
Решили возобновить тренировки с 12 февраля
Задачи и тестирование финалов
Михаил Долинский

Темы: 1982
Сообщений: 47183

Мой профиль


Михаил Долинский:

Решили возобновить тренировки с 12 февраля
Задачи и тестирование финалов
 


Как придумывать решения задач: приёмы
Михаил Долинский

Темы: 1982
Сообщений: 47183

Мой профиль
Предлагаю на обдумывание и обсуждение дополнительные соображения
об организации тестирования решения для сдачи с первой отсылки


1. Сначала добиться сдачи с первой отсылки всех (ну или почти всех) задач.
    И только потом думать, как сократить затрачиваемое на это время.

2. Схема организации тестирования 
- Во время придумывания решения Егор, Влад Хамков, а если свободен, то и Влад Бортенко   
   придумывают тесты и фиксируют их на бумаге 
   (А Бортенко свои тесты может сразу на компе, а чужие - вносить по мере подачи)
   Тесты располагаются в папке задачи в стандартном виде 
    1.in 1.out, 2.in, 2.out ….
    Влад Хамков готовит среду автоматизации тестирования универсальную для всех задач
    также Влад Хамков пишет (на Питоне как он любит)
      - генератор тестов для задачи 
       (количество генерируемых тестов - параметр запуска, номер первого теста -  тоже)
         Ну или чтобы не возиться с номерами 
         иметь две папки с тестами начинающимися с 1 - manual и auto
      - брутовое решение задачи для получения правильных ответов
      - добавляет автоматически сгенерированные тесты в папку задачи с ручными тестами 
        (или отдельной папкой)  
   Среда тестирования 
     - получает в качестве параметра папку задачи, путь к исходнику Бортенко
     - компилирует решение Бортенко (батником со стандартными параметрами для официальной тест-системы) 
   И прогоняет решение на всех подготовленных тестах
   С остановом на первой обнаруженной ошибке
  (или прогоном на всех тестах с протоколированием всех ошибок - тоже параметр запуска)

Бортенко перед отправкой своего решения на официальное тестирование 
тестирует его в среде Хамкова.

Михаил Долинский

Темы: 1982
Сообщений: 47183

Мой профиль
CF-профили

ГГУ-2
Короткевич
Хамков
Бортенко

ГГУ-2

Темы: 0
Сообщений: 10

Мой профиль
2022 NEE4N
E - +2
Первая посылка - опечатка
Вторая посылка - ошибка в формуле
Нужно быть внимательнее

N - +2
Две посылки - две опечатки
Задача на реализацию, легко допустить опечатки. Нужно быть внимательнее

M - Не успели пофиксить все баги в коде

B - Где-то баг, но не нашли. Возможно, ошибка в идеи.

B, F переписывает Егор
M дописывает Влад

Егор придумал еще F

Егор разбирает остальные задачи и описывает в форуме как решать.
ГГУ-2

Темы: 0
Сообщений: 10

Мой профиль
2019 NEE4n

M - Плохо рассчитали асимптотику
E - Hеправильно выбран подход к задаче
J - Мало времени потратили на обдумывание
 
Индекс форума ->Олимпиадное программирование ->Тактика на командных олимпиадах 1, 2, 3, ... 8, 9, 10, 11
Time:0,047