結果
| 問題 |
No.306 さいたま2008
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-01-29 12:57:51 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 872 bytes |
| コンパイル時間 | 527 ms |
| コンパイル使用メモリ | 59,948 KB |
| 実行使用メモリ | 6,944 KB |
| 最終ジャッジ日時 | 2024-09-21 17:51:26 |
| 合計ジャッジ時間 | 1,301 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 19 WA * 4 |
ソースコード
#include <iostream>
#include <math.h>
double pyt(double sa, double sb)
{
return ::sqrt((sa * sa) + (sb * sb));
}
double f(double ax, double ay, double bx, double by)
{
if (ay == by) {
return ay;
}
double p_min = ay < by? ay: by;
double p_len = ::fabs(ay - by);
double p_max = p_min + p_len;
double n = 0;
double rc = ax;
double wk = pyt(ax, p_len) + bx;
while (n <= p_len) {
double a = pyt(ax, (ay < by? n: (p_len - n)));
double b = pyt(bx, (by < ay? n: (p_len - n)));
double w = a + b;
if (w < wk) {
wk = w;
rc = n;
}
n += 0.001;
}
return p_min + rc;
}
int main()
{
double ax, ay, bx, by;
std::cin >> ax;
std::cin >> ay;
std::cin >> bx;
std::cin >> by;
std::cout << f(ax, ay, bx, by) << std::endl;
return 0;
}