結果
問題 | No.635 自然門松列 |
ユーザー |
![]() |
提出日時 | 2018-02-14 10:02:20 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 30 ms / 650 ms |
コード長 | 982 bytes |
コンパイル時間 | 293 ms |
コンパイル使用メモリ | 12,800 KB |
実行使用メモリ | 11,008 KB |
最終ジャッジ日時 | 2024-06-23 08:51:18 |
合計ジャッジ時間 | 1,454 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 23 |
ソースコード
def func(x): if x[0] == x[1] or x[0] == x[2]: return False if x[1] > x[0] and x[1] > x[2] : return True if x[1] < x[0] and x[1] < x[2] : return True return False def make(x, y, t) : z = [x[i] for i in range(3)] if t < 0.0 : return x for i in range(3) : z[i] += y[i] * t return z N = int(input()) for case in range(N) : z = list(map(int, input().split())) x = [0 for i in range(3)] y = [0 for i in range(3)] for i in range(3) : x[i] = z[i] for i in range(3) : y[i] = z[i+3] f = func(x) # print('{} {}'.format(x,y)) for i in range(3) : for j in range(i) : if y [i] != y[j] : t = (x[j] - x[i]) / (y[i] - y[j]) if func(make(x, y, t + 0.0000001)) or func(make(x, y, t - 0.0000001)) : f = True # print('{} {} {} {}'.format(i, j, t, make(x, y, t))) print("YES" if f else "NO")