QOJ.ac

QOJ

時間限制: 1 s 記憶體限制: 64 MB 總分: 100

#23809. Крокуючий Санта-Клаус

统计

Умова задачі

Наприкінці минулого року Санта-Клаус забув подарувати різдвяні подарунки дітям із села JOI. Тому на знак вибачення він вирішив доставити дітям шоколадні торти. Оскільки день доставки вже завтра, час продумати план пересування.

Село JOI поділено у вигляді сітки $W$ прямими дорогами, що простягаються з півночі на південь, і $H$ прямими дорогами, що простягаються зі сходу на захід. $W$ доріг напрямку північ-південь пронумеровано по порядку із заходу числами $1, 2, \dots, W$, а $H$ доріг напрямку схід-захід пронумеровано по порядку з півдня числами $1, 2, \dots, H$. Перехрестя, на якому перетинаються $x$-та із заходу дорога північ-південь і $y$-та з півдня дорога схід-захід, позначається як $(x, y)$. У селі JOI є $N$ будинків, і кожен із них розташований на деякому перехресті. Санта-Клаус може пересуватися лише вздовж доріг. Час, необхідний для переміщення між сусідніми перехрестями, дорівнює $1$.

Оскільки в усіх будинках села JOI є діти, Санта-Клаус повинен обійти всі будинки села JOI і доставити в кожен по $1$ шоколадному торту. Оскільки літати небом з оленями, тримаючи дорогоцінні шоколадні торти, дещо небезпечно, Санта-Клаус і олені вирішили приземлитися на якомусь перехресті села JOI, звідки Санта-Клаус піде розносити шоколадні торти пішки. Санта-Клаус не носить під час ходьби одночасно $2$ або більше шоколадних тортів. Іншими словами, щоразу, доставивши шоколадний торт в $1$ будинок, Санта-Клаус повертається на перехрестя, на якому він приземлився.

Санта-Клаус вирішив обрати такий план пересування, за якого загальний час від моменту приземлення в селі JOI до доставки шоколадних тортів у всі будинки буде мінімальним. Зверніть увагу, що час, необхідний для повернення на перехрестя приземлення після доставки шоколадного торта в останній будинок, не враховується до необхідного часу. Крім того, ніщо, крім часу на пересування, не береться до уваги.

За заданою інформацією про розташування будинків напишіть програму, яка знайде мінімальний час, необхідний з моменту приземлення в селі JOI до доставки шоколадних тортів у всі будинки за оптимального вибору перехрестя приземлення, а також координати перехрестя, на якому слід приземлитися для мінімізації цього часу.

Вхідні дані

Зчитайте такі дані зі стандартного потоку вводу:

  • У $1$-му рядку через пробіл записано цілі числа $W, H$, що означають кількість доріг кожного напрямку.
  • У $2$-му рядку записано ціле число $N$, що означає кількість будинків.
  • У наступних $N$ рядках записано інформацію про розташування будинків. У $(i + 2)$-му рядку ($1 \le i \le N$) через пробіл записано цілі числа $X_i, Y_i$, які означають, що $i$-й будинок розташований на перехресті $(X_i, Y_i)$. Усі ці $N$ перехресть є різними.

Вихідні дані

Виведіть у стандартний потік виводу такі дані:

  • У $1$-му рядку має бути записано $1$ ціле число, що позначає мінімальний необхідний час.
  • У $2$-му рядку, якщо перехрестя, на якому слід приземлитися для мінімізації необхідного часу, має координати $(x, y)$, мають бути через пробіл у цьому порядку записані $2$ цілі числа $x, y$. Якщо відповідних перехресть декілька, оберіть із них найзахідніше (тобто з найменшим значенням $x$), а якщо й це не визначає $1$ перехрестя однозначно, оберіть серед них найпівденніше (тобто з найменшим значенням $y$).

Приклад

Приклад 1

Вхідні дані
5 4
3
1 1
3 4
5 3
Вихідні дані
10
3 3
Пояснення

Наприклад, мінімізувати необхідний час можна за допомогою такого плану пересування:

  • Приземлитися на перехресті $(3, 3)$.
  • Доставити шоколадний торт у будинок, розташований на перехресті $(3, 4)$. Час, що минув до цього моменту, дорівнює $1$.
  • Повернутися на перехрестя $(3, 3)$. Час, що минув до цього моменту, дорівнює $2$.
  • Доставити шоколадний торт у будинок, розташований на перехресті $(5, 3)$. Час, що минув до цього моменту, дорівнює $4$.
  • Повернутися на перехрестя $(3, 3)$. Час, що минув до цього моменту, дорівнює $6$.
  • Доставити шоколадний торт у будинок, розташований на перехресті $(1, 1)$. Час, що минув до цього моменту, дорівнює $10$.

Приклад 2

Вхідні дані
4 6
8
1 3
3 2
4 4
2 5
2 3
3 3
3 4
2 4
Вихідні дані
21
2 3
Пояснення

Зверніть увагу, що приземлятися можна й на перехресті, де розташований будинок.

Обмеження

  • $1 \le W \le 1000000000 = 10^9$: кількість доріг, що простягаються з півночі на південь.
  • $1 \le H \le 1000000000 = 10^9$: кількість доріг, що простягаються зі сходу на захід.
  • $1 \le N \le 100000 = 10^5$: кількість будинків.
  • $1 \le X_i \le W$: номер дороги напрямку північ-південь для положення $i$-го будинку.
  • $1 \le Y_i \le H$: номер дороги напрямку схід-захід для положення $i$-го будинку.

Зверніть увагу, що в цій задачі діапазон оброблюваних цілих чисел може не вміщуватися в $32$-бітний цілочисельний тип.

Система оцінювання

  • Для тестів вартістю $40\%$ від загальної кількості балів виконується умова $N \le 1000$.
  • Для тестів вартістю $10\%$ від загальної кількості балів виконуються умови $W \le 50, H \le 50, N \le 1000$.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.