10390: Опукла оболонка


Відправити розв'язок

Бали: 100 (partial)
Time limit: 1.0s
Memory limit: 64M

Author:
Problem type
Allowed languages
Brain****, C, C++, Java, Pascal, Python, v8js

На площині задано \(N\) точок. Побудуйте опуклу оболонку даноъ множини точок.

Формат вхідних даних

В першому рядку число \(N\) - кількість точок (\(1 \le N \le 20000\)).
В наступних \(N\) рядках міститься по два цілих числа - координати точок. Всі числа за модулем не перевищують \(10^4\)

Формат вихідних даних

В першому рядку виведіть кількість точок в опуклій оболонці.
В наступних рядках виведіть координати точок в порядку обходу.
Якщо \(N\) непарне - виведіть точки опуклої оболон в порядку обходу за годинниковою стрілкою, а якщо парне - в порядку обходу проти годинникової стрілки

Приклад вхідних даних

4
0 0
3 4
3 1
6 0

Приклад вихідних даних

3
6 0
3 4
0 0

Коментарі

Ще немає коментарів.