結果

問題 No.3023 Utility is Max?
ユーザー ArcAki
提出日時 2025-02-01 17:56:07
言語 C++23
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 1,087 bytes
コンパイル時間 1,568 ms
コンパイル使用メモリ 78,108 KB
実行使用メモリ 6,824 KB
最終ジャッジ日時 2025-02-01 17:56:16
合計ジャッジ時間 8,336 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 1 WA * 16
権限があれば一括ダウンロードができます

ソースコード

diff #

// GPT-o3-miniの実験

#include <iostream>
using namespace std;
using ll = long long;

int main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    
    int Q;
    cin >> Q;
    for(int i = 0; i < Q; i++){
        ll I;
        cin >> I;
        ll A1, B1, X1, Y1;
        cin >> A1 >> B1 >> X1 >> Y1;
        ll A2, B2, X2, Y2;
        cin >> A2 >> B2 >> X2 >> Y2;
        
        bool ok = true;
        // (1) 店1で予算をちょうど使い切っているか
        if(A1 * X1 + B1 * Y1 != I) ok = false;
        // (2) 店2で予算をちょうど使い切っているか
        if(A2 * X2 + B2 * Y2 != I) ok = false;
        // (3) 店1の購入量が店2の予算制約下で購入可能ならば境界である必要がある
        ll cross1 = A2 * X1 + B2 * Y1;
        if(cross1 < I) ok = false;
        // (4) 店2の購入量が店1の予算制約下で購入可能ならば境界である必要がある
        ll cross2 = A1 * X2 + B1 * Y2;
        if(cross2 < I) ok = false;
        
        cout << (ok ? "Yes" : "No") << "\n";
    }
    return 0;
}
0