Pascal ABC

 

ГЛАВНАЯ
ССЫЛКИ
ОЛИМПИАДНЫЕ ЗАДАНИЯ
Очень простые

Проблема с A и B

Трамвайные билеты

Шифр Цезаря

Четные и нечетные члены последовательности

"Мы вас упакуем!"

Простые

Равновеликие прямоугольники

Скобки

 

Уравнение

 

Вирусы

 

КВН

 

Коррекция кода

 

Степень

 

Демократия в опасности

 

Пуговицы

 

A to B

 

Палиндромы

 

Почти Крэг Туми

 

Виза

 

Ездец

 
Средней сложности  

MIME64

 

Куль хацкеры

 

Редкое имя

 

Города

 

Исправления

 

Банки

 

2^n

 

Ниточка

 

Массивище

 

Знакомые

 

Считаем кораблики

Лошадью ходи!

Левые повороты

Прицельное метание помидор

Анаграммы

Треугольник

Принцип компании

Уникальная строка

Конфуз

K-ичные числа

Михаил Густокашин против бюрократии

Агенты

Игра в слова

Сложные

Диски

Домино

Монеты

Программистика

Хитрющая строка

Робот-сапер

Квадраты

Упаковка простых

Оппозиция

 

Замок

 

Многоугольники

 

Электронные часы

 

Дождик

 

Черепаха

 

Метро

 

Террористы

 

Школы

 
Очень сложные/особо интересные  

Система Защиты

 

Бизнес-классики

 

Телеметрия

 

Лесной пожар

 

Олимпиада

 

Автобусный диспетчер

 

 Кубики

 

Электронная почта

 

Автобус

 

 

 

 

ОЛИМПИАДНЫЕ ЗАДАНИЯ

Олимпиадные задачи с рекомендациями к решениям

Задача 27: Ниточка

А.Петров, Н.Шамгунов

Злоумышленники варварски вбили в ни в чем неповинную плоскую поверхность N гвоздей, да так, что только шляпки остались. Мало того, они в своих подлых целях вбили все гвозди в вершины выпуклого многоугольника. После этого они... страшно сказать... они натянули ниточку вокруг всех гвоздей, так, что поверхности стало совсем грустно! Вот как, примерно, они это сделали:
Ваша задача - определить длину этой ниточки.
Ввод. В первой строке входного файла к этой задаче находятся два числа - количество гвоздей N, 1 < N < 100, и вещественное число R - радиус шляпок гвоздей. Все шляпки имеют одинаковый радиус. Далее во входном файле располагаются еще N строк, в каждой из которых записана через пробел пара вещественных координат центра очередного гвоздя; координаты не превосходят по абсолютной величине числа 100. Описания гвоздей приводятся в порядке обхода вершин многоугольника по или против часовой стрелки, начиная с произвольного гвоздя. Шляпки разных гвоздей не соприкасаются.
Вывод. Выходной файл должен в своей единственной строке содержать вещественное число, округленное до двух знаков после запятой - длину ниточки, натянутой вокруг всех гвоздей.
Пример файла input.txt.

4 1
0.0 0.0
2.0 0.0
2.0 2.0
0.0 2.0
Пример файла output.txt.

14.28

Решение:
Заметим, что ниточка замкнута, т.е. радиус-вектор совершил полный оборот - угол в 2pi радиан. Несложно найти длину ниточки, обходящую вокруг шляпок гвоздей - 2pi*r, где r - радиус гвоздя. Если бы все гвозди были разные, то задача была бы посложнее, а так нам осталось только найти длину ниточки, соединяющей разные шляпки. В нашм случае для этого достаточно сложить расстояния между центрами гвоздей(не забыв соединить последний гвоздь с первым). Это делается очень просто  S12 = sqrt(sqr(x1-x2) + sqr(y1-y2)).
Все.

Далее ð





 


 

 

 
 

СЕРВИС

Copyright © 2008 СОШ №2 им. Н.П. Массонова г.Свислочь © Синица А.А.