結果
| 問題 | 
                            No.3023 Utility is Max?
                             | 
                    
| コンテスト | |
| ユーザー | 
                             kidodesu
                         | 
                    
| 提出日時 | 2025-02-15 00:19:09 | 
| 言語 | PyPy3  (7.3.15)  | 
                    
| 結果 | 
                             
                                AC
                                 
                             
                            
                         | 
                    
| 実行時間 | 611 ms / 1,000 ms | 
| コード長 | 855 bytes | 
| コンパイル時間 | 4,665 ms | 
| コンパイル使用メモリ | 82,124 KB | 
| 実行使用メモリ | 77,520 KB | 
| 最終ジャッジ日時 | 2025-02-15 00:20:05 | 
| 合計ジャッジ時間 | 15,094 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge5 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 2 | 
| other | AC * 17 | 
ソースコード
q = int(input())
def make():
    I = int(input())
    a0, b0, x0, y0 = tuple(map(int, input().split()))
    a1, b1, x1, y1 = tuple(map(int, input().split()))
    if a0 * x0 + b0 * y0 > I:
        return "No"
    if a1 * x1 + b1 * y1 > I:
        return "No"
    ama0 = I - a0 * x0 - b0 * y0
    ama1 = I - a1 * x1 - b1 * y1
    if ama0 >= a0 or ama0 >= b0 or ama1 >= a1 or ama1 >= b1:
        return "No"
    if a0 * b1 > a1 * b0:
        a0, b0, x0, y0, a1, b1, x1, y1 = a1, b1, x1, y1, a0, b0, x0, y0
    f0 = (a1 * b0 - a0 * b1) * x0 <= I * (b0 - b1)
    f1 = (a1 * b0 - a0 * b1) * x0 < I * (b0 - b1)
    f2 = (a1 * b0 - a0 * b1) * x1 >= I * (b0 - b1)
    f3 = (a1 * b0 - a0 * b1) * x1 > I * (b0 - b1)
    if (f1 and f3) or (f0 and f3) or (f1 and f2):
        return "No"
        
    else:
        return "Yes"
for _ in range(q):
    print(make())
            
            
            
        
            
kidodesu