ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Обсуждение задачи 1647. Раздел острова

Victor Barinov (TNU) try this test: [8] // Задача 1647. Раздел острова 25 окт 2008 21:11
Hi everybody! Please run your AC programs on this test:

0 0 1000 1 2000 0

And post you result with name of compiler you use.

Thank you!
Vedernikoff Sergey (HSE: EconomicsForever!) Re: try this test: [7] // Задача 1647. Раздел острова 25 окт 2008 21:23
YES
999.999499737564410 0.999999499737564
1000.000500262685700 0.000000000000000

P.S. Compiler - VS C++. My prog got AC

Edited by author 25.10.2008 21:24
Victor Barinov (TNU) Re: try this test: [6] // Задача 1647. Раздел острова 25 окт 2008 21:48
Thanks!
But it is incorrect answer. Precision is not enough. I think jury must change precision to 1e-3 or add this test and make rejudge...

Edited by author 25.10.2008 21:53
Vedernikoff Sergey (HSE: EconomicsForever!) Re: try this test: [5] // Задача 1647. Раздел острова 25 окт 2008 21:53
Correct - my solution is analytical. Think why this is another correct answer but obvious "1000 0 1000 1".
Victor Barinov (TNU) Re: try this test: [4] // Задача 1647. Раздел острова 25 окт 2008 21:59
It is analytical but not so exact. Actually some analytical solution can use more square root and so on and give not so exact result... If this test will be added (and some similar) than many AC solution will fail.
Vedernikoff Sergey (HSE: EconomicsForever!) Re: try this test: [3] // Задача 1647. Раздел острова 25 окт 2008 22:09
What means "Not so exact"???

Perimeter of one part - 2000.0004999998749789068277343249
Perimeter of another part - 2000.0004999998750212181721875511

Area of one part - 499.9999999999997186851059078174
Area of another part - 500.0000000000002813148940921826

Don't you see some similarity in them? Up to 10^-12!
Victor Barinov (TNU) Re: try this test: [2] // Задача 1647. Раздел острова 25 окт 2008 22:13
Thank you.
Now I understood that in this case we have 3 solution one of them:
1000 0 1000 1 - the median of triangle
and 2 another similar to your result.

Sorry for flood
Elmurod Re: try this test: [1] // Задача 1647. Раздел острова 30 окт 2008 23:03
Victor Barinov (TNU) Help me please I choose method with median... but i have WA#2

#include <iostream>
#include <math.h>
using namespace std;
int main()
{
double x1,y1,x2,y2,x3,y3,a,b,c;
double X1,X2,Y1,Y2,X,Y,X0,Y0;
cout.precision(15);
cout.setf(ios::fixed);
cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;
a = sqrt((double)pow(x1-x2,2)+pow(y1-y2,2));
b = sqrt((double)pow(x1-x3,2)+pow(y1-y3,2));
c = sqrt((double)pow(x2-x3,2)+pow(y2-y3,2));
// Finding big side of triangle
if (a > b && a > c)
{
X1 = x1; Y1 = y1; X2 = x2; Y2 = y2;
X0 = x3; Y0 = y3;
}
else if (b > a && b > c)
{
X1 = x1; Y1 = y1; X2 = x3; Y2 = y3;
X0 = x2; Y0 = y2;
}
else if (c > a && c > b)
{
X1 = x2; Y1 = y2; X2 = x3; Y2 = y3;
X0 = x1; Y0 = y1;
}
X = (X1 + X2) / 2; Y = (Y1 + Y2) / 2;
cout<<"YES"<<endl<<X0<<" "<<Y0<<endl;
cout<<X<<" "<<Y;
return 0;
}
d6d0d1a8 Re: try this test: // Задача 1647. Раздел острова 1 ноя 2008 10:52
Why the segment ST can be the middle-line of the triangle.
If a is the longest edge and b is not equal with c, the solution can work out a right answer?