結果
問題 |
No.306 さいたま2008
|
ユーザー |
|
提出日時 | 2020-03-27 02:13:14 |
言語 | Java (openjdk 23) |
結果 |
WA
|
実行時間 | - |
コード長 | 896 bytes |
コンパイル時間 | 3,315 ms |
コンパイル使用メモリ | 79,604 KB |
実行使用メモリ | 54,504 KB |
最終ジャッジ日時 | 2025-01-02 07:49:22 |
合計ジャッジ時間 | 6,904 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 21 WA * 2 |
ソースコード
import java.util.*; import java.io.*; import java.math.*; public class No306 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int xa=sc.nextInt(), ya=sc.nextInt(),xb=sc.nextInt(), yb=sc.nextInt(); // double t = yb, b = ya; // double t = ya, b = yb; double t, b; if(ya > yb) { t = ya; b = yb; }else { t = yb; b = ya; } while(t-b > 0.000001) { double p0 = (t*2+b)/3; double p1 = (t+b*2)/3; if(search(xa,ya,xb,yb,p0) < search(xa,ya,xb,yb,p1)) { b = p1; }else { t = p0; } } if(search(xa,ya,xb,yb,t) < search(xa,ya,xb,yb,b)) { System.out.println(t); }else { System.out.println(b); } } public static double search(int xa, int ya, int xb, int yb, double p) { double a = Math.sqrt(Math.pow(xa, 2) + Math.pow(ya-p, 2)); double b = Math.sqrt(Math.pow(xb, 2) + Math.pow(yb-p, 2)); return a+b; } }