結果
問題 | No.229 線分上を往復する3つの動点の一致 |
ユーザー | itezpace |
提出日時 | 2016-11-03 08:23:23 |
言語 | Java (openjdk 23) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,913 bytes |
コンパイル時間 | 3,737 ms |
コンパイル使用メモリ | 82,124 KB |
実行使用メモリ | 124,676 KB |
最終ジャッジ日時 | 2024-11-25 02:24:18 |
合計ジャッジ時間 | 181,182 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | TLE | - |
testcase_01 | AC | 146 ms
61,940 KB |
testcase_02 | AC | 168 ms
116,692 KB |
testcase_03 | AC | 191 ms
118,960 KB |
testcase_04 | AC | 145 ms
62,160 KB |
testcase_05 | AC | 162 ms
62,072 KB |
testcase_06 | AC | 169 ms
61,324 KB |
testcase_07 | WA | - |
testcase_08 | TLE | - |
testcase_09 | TLE | - |
testcase_10 | AC | 314 ms
121,292 KB |
testcase_11 | TLE | - |
testcase_12 | TLE | - |
testcase_13 | AC | 1,478 ms
124,436 KB |
testcase_14 | WA | - |
testcase_15 | AC | 899 ms
124,676 KB |
testcase_16 | WA | - |
testcase_17 | TLE | - |
testcase_18 | WA | - |
testcase_19 | WA | - |
testcase_20 | TLE | - |
testcase_21 | WA | - |
testcase_22 | TLE | - |
testcase_23 | TLE | - |
testcase_24 | TLE | - |
testcase_25 | TLE | - |
testcase_26 | TLE | - |
testcase_27 | TLE | - |
testcase_28 | WA | - |
testcase_29 | TLE | - |
testcase_30 | TLE | - |
testcase_31 | TLE | - |
testcase_32 | TLE | - |
testcase_33 | TLE | - |
testcase_34 | TLE | - |
testcase_35 | TLE | - |
testcase_36 | TLE | - |
testcase_37 | TLE | - |
testcase_38 | TLE | - |
testcase_39 | TLE | - |
testcase_40 | WA | - |
testcase_41 | WA | - |
testcase_42 | AC | 3,005 ms
62,680 KB |
testcase_43 | TLE | - |
testcase_44 | TLE | - |
testcase_45 | TLE | - |
ソースコード
import java.util.Scanner; import java.math.BigDecimal; public class Yuki229{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); int c = sc.nextInt(); int d = lcm(a, lcm(b, c)); double a2 = a; a2 /= 2; double b2 = b; b2 /= 2; double c2 = c; c2 /= 2; int d3 = 1; double e = 1; double a2_2 = 1; a2_2 /= a2; double b2_2 = 1; b2_2 /= b2; double c2_2 = 1; c2_2 /= c2; for(int i=1; i <= d; i++){ double d2 = d; d2 /= i; double a3 = d2; a3 *= a2_2; double b3 = d2; b3 *= b2_2; double c3 = d2; c3 *= c2_2; double a4 = 0, b4 = 0, c4 = 0; int a3_2 = (int)a3; if(a3_2 % 2 == 0){ a4 = a3 - a3_2; } else { a4 = 1 - (a3 - a3_2); } int b3_2 = (int)b3; if(b3_2 % 2 == 0){ b4 = b3 - b3_2; } else { b4 = 1 - (b3 - b3_2); } int c3_2 = (int)c3; if(c3_2 % 2 == 0){ c4 = c3 - c3_2; } else { c4 = 1 - (c3 - c3_2); } BigDecimal bd_a4 = new BigDecimal(a4); BigDecimal bd_a5 = bd_a4.setScale(10, BigDecimal.ROUND_HALF_UP); BigDecimal bd_b4 = new BigDecimal(b4); BigDecimal bd_b5 = bd_b4.setScale(10, BigDecimal.ROUND_HALF_UP); BigDecimal bd_c4 = new BigDecimal(c4); BigDecimal bd_c5 = bd_c4.setScale(10, BigDecimal.ROUND_HALF_UP); double a6 = bd_a5.doubleValue(); double b6 = bd_b5.doubleValue(); double c6 = bd_c5.doubleValue(); if(a6 == b6 && b6 == c6){ d3=i; } } System.out.println(d + "/" + d3); } public static int gcd(int a, int b){ int c; if(b!=0){ c=gcd(b, a % b); } else { c=a; } return c; } public static int lcm(int a, int b){ int c = a * b / gcd(a, b); return c; } }