L-R поток

Revision ru1, by Noobish_Monk, 2025-07-08 14:24:41

Недавно я встретил задачу 2046D - For the Emperor!, которая напомнила мне про существование L-R потоков. Я их узнал очень давно, да и в тот момент задачи помимо "просто напиши L-R поток" нам не дали, так что я не запомнил алгоритм и мне пришлось узнать его заново, уже более детально. К сожалению блога на кфе, который бы всё понятно объяснил, не было, так что пришлось лазить по всяким другим ресурсам. Я нашёл их тут, примерно понял идею, потом пришлось смотреть реализацию, у меня к ней остались вопросы, я воспринимал немного как чёрный ящик. Но сегодня в 3 часа ночи мне пришло озарение и я всё понял. Чтобы тем 5 людям, которые прочитают мой блог, не пришлось его ждать, я хочу тут разъяснить моё понимание этого алгоритма и как его удобно писать.

Что такое вообще L-R поток?

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
en14 English Noobish_Monk 2025-07-08 18:11:00 9
en13 English Noobish_Monk 2025-07-08 18:02:02 0 (published)
ru16 Russian Noobish_Monk 2025-07-08 16:10:11 0 (опубликовано)
en12 English Noobish_Monk 2025-07-08 16:08:07 2 Tiny change: 'on of the ,ax flow pr' -> 'on of the max flow pr'
ru15 Russian Noobish_Monk 2025-07-08 16:07:18 22
en11 English Noobish_Monk 2025-07-08 16:05:44 22
ru14 Russian Noobish_Monk 2025-07-08 16:04:57 2
ru13 Russian Noobish_Monk 2025-07-08 16:04:40 4
ru12 Russian Noobish_Monk 2025-07-08 16:04:14 96
en10 English Noobish_Monk 2025-07-08 16:03:50 10 Initial revision for English translation
en9 English Noobish_Monk 2025-07-08 16:03:07 47 Initial revision for English translation
en8 English Noobish_Monk 2025-07-08 16:02:13 0 Initial revision for English translation
en7 English Noobish_Monk 2025-07-08 16:02:02 2 Initial revision for English translation
en6 English Noobish_Monk 2025-07-08 16:01:42 15 Initial revision for English translation
en5 English Noobish_Monk 2025-07-08 16:00:57 5 Initial revision for English translation
en4 English Noobish_Monk 2025-07-08 16:00:21 8 Initial revision for English translation
en3 English Noobish_Monk 2025-07-08 16:00:00 3 Initial revision for English translation
en2 English Noobish_Monk 2025-07-08 15:59:43 4 Initial revision for English translation
en1 English Noobish_Monk 2025-07-08 15:59:26 9319 Initial revision for English translation (saved to drafts)
ru11 Russian Noobish_Monk 2025-07-08 15:44:19 7 Мелкая правка: ' cout << '\n';\' -> ' cout << ans << '\n';\'
ru10 Russian Noobish_Monk 2025-07-08 15:43:20 80
ru9 Russian Noobish_Monk 2025-07-08 15:42:52 1710
ru8 Russian Noobish_Monk 2025-07-08 15:28:13 3233
ru7 Russian Noobish_Monk 2025-07-08 15:26:13 793 Мелкая правка: ' $(u, v)$.' -> ' $(u, v)$.\n\n![ ](https://mirror.codeforces.com/6bd2e0/flow1 (1)-1.png)'
ru6 Russian Noobish_Monk 2025-07-08 14:59:01 75 Мелкая правка: ' $(u, v)$.' -> ' $(u, v)$.\n\n![ ](https://mirror.codeforces.com/6bd2e0/flow1 (1)-1.png)'
ru5 Russian Noobish_Monk 2025-07-08 14:55:37 19 Мелкая правка: ', v)$.\n\n' -> ', v)$.\n\n![ ](flow1 (1))'
ru4 Russian Noobish_Monk 2025-07-08 14:54:56 15 Мелкая правка: ', v)$.\n\n' -> ', v)$.\n\n![ ](flow1 (1))'
ru3 Russian Noobish_Monk 2025-07-08 14:53:07 4 Мелкая правка: ' $(u, v)$.' -> ' $(u, v)$.\n\n'
ru2 Russian Noobish_Monk 2025-07-08 14:50:12 2258
ru1 Russian Noobish_Monk 2025-07-08 14:24:41 858 Первая редакция (сохранено в черновиках)