<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://acm.khpnets.info/w39/index.php?action=history&amp;feed=atom&amp;title=Codeforces_100971.D</id>
	<title>Codeforces 100971.D - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://acm.khpnets.info/w39/index.php?action=history&amp;feed=atom&amp;title=Codeforces_100971.D"/>
	<link rel="alternate" type="text/html" href="https://acm.khpnets.info/w39/index.php?title=Codeforces_100971.D&amp;action=history"/>
	<updated>2026-06-02T22:10:22Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://acm.khpnets.info/w39/index.php?title=Codeforces_100971.D&amp;diff=2026&amp;oldid=prev</id>
		<title>Ctrlalt: Новая страница: «== Ссылка на задачу == * [http://codeforces.com/gym/100971/problem/D Codeforces #100971.D &amp;mdash; Прокладка кабелей]  == Комме…»</title>
		<link rel="alternate" type="text/html" href="https://acm.khpnets.info/w39/index.php?title=Codeforces_100971.D&amp;diff=2026&amp;oldid=prev"/>
		<updated>2016-06-08T13:41:30Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «== Ссылка на задачу == * [http://codeforces.com/gym/100971/problem/D Codeforces #100971.D — Прокладка кабелей]  == Комме…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Ссылка на задачу ==&lt;br /&gt;
* [http://codeforces.com/gym/100971/problem/D Codeforces #100971.D &amp;amp;mdash; Прокладка кабелей]&lt;br /&gt;
&lt;br /&gt;
== Комментарии ==&lt;br /&gt;
Пусть город-родитель может располагаться только справа.&lt;br /&gt;
&lt;br /&gt;
Отсортируем города по возрастанию координаты, а также заведём стек городов. Будем идти по городам слева направо. Пусть C &amp;amp;mdash; город на вершине стека, R &amp;amp;mdash; текущий просматриваемый город. Пока население C меньше населения R, снимаем C со стека и говорим, что R &amp;amp;mdash; родитель C. После завершения цикла while кладём R в стек.&lt;br /&gt;
&lt;br /&gt;
Пусть теперь город-родитель также может располагаться слева.&lt;br /&gt;
&lt;br /&gt;
Делаем то же самое, но идём по городам слева направо. Пусть C &amp;amp;mdash; город на вершине стека, L &amp;amp;mdash; текущий просматриваемый город, R &amp;amp;mdash; найденный на предыдущем этапе правый родитель C (если он есть). Пока население C меньше населения L, снимаем C со стека; если при этом R == -1, либо расстояние от C до L меньше расстояния от C до R, либо расстояния равны, но население L больше населения R, то говорим, что L &amp;amp;mdash; родитель C. После завершения цикла while кладём L в стек.&lt;br /&gt;
&lt;br /&gt;
[[Category: Сборник задач: Codeforces]]&lt;br /&gt;
[[Category: Задачи: Сортировка]]&lt;br /&gt;
[[Category: Задачи: Стек]]&lt;/div&gt;</summary>
		<author><name>Ctrlalt</name></author>
	</entry>
</feed>