Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 
Вернуться
Тема: Во второй задаче олимпиады в примере ответ неправильный. Если предположить, что верхний полукруг там полностью лежит в треугольнике, то ответ 5.5708, если нет, то 5.5908. Но 5.69646 там никак не получается
1
  1  Жемелев Георгий Алексеевич, 27 июня 2012 г. 23:11:41
      Надеюсь, сможете разобраться в формуле. Суть в том, что искомая площадь равна сумме площадей окружности и четырехугольника, который образуют отрезки касательных к окружности (проведенные из первой точки) и радиусы, проведенные в точки касания, минус площадь сектора, в котором эти две фигуры пересекаются.

program B_pomestie;
var xk,yk,xc,yc,r,S: real;
begin
assign(input,'input.txt'); reset(input);
assign(output,'output.txt'); rewrite(output);
S:=0;
read(xk,yk,xc,yc,r);
S:=pi*r*r + (sqrt((sqr(xk-xc)+sqr(yk-yc))-r*r )*r) - r*r*arctan(sqrt( sqr(xk-xc)+sqr(yk-yc)-r*r )/r);
write(S:0:5);
end.
  2  Морозов Игорь Олегович, 27 июня 2012 г. 18:49:33
      Не стану спорить. Но прошу тогда сбросить сюда решение, которое при входных данных примера дает 5.69646
  3  Лукьянчиков Владимир Игоревич луал ру, 27 июня 2012 г. 17:50:47
      верхний полукруг полностью никогда не будет лежать в треугольнике, т.к. это возможно лишь при двух параллельных вертикальных прямых
1

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2026, ИНН 246305493507, E-mail: admin@acmp.ru