結果

問題 No.1570 Blocks
ユーザー もな
提出日時 2021-06-27 13:36:49
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 1,274 bytes
コンパイル時間 2,155 ms
コンパイル使用メモリ 199,812 KB
最終ジャッジ日時 2025-01-22 14:04:40
ジャッジサーバーID
(参考情報)
judge3 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 44 WA * 1
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
using namespace std;
#define MOD 1000000007
#define MOD2 998244353
#define rep(i,n) for (int i = 0; i < (int)(n); i++)
#define reps(i,s,n) for (int i = (int)(s); i < (int)(n); i++)
#define repit(i,C) for (auto i = (C).begin(); i != (C).end(); i++)
#define pr(a) cout << a
#define prl(a) cout << (a) << endl
#define prld(a) cout << setprecision(15)<< (a) << endl 
#define allrange(a) a.begin(),a.end()

int solve(){
    return 0;
}

int main(){
    std::cin.tie(0); // cinとcoutの同期を解除
    std::ios::sync_with_stdio(false);
    int N;cin >> N;
//  int N,M;cin >> N>>M;
//  int N,M,K;cin >> N>>M>>K;

    
    vector<pair<int64_t,int64_t>> B;
    int64_t tot=0;
    rep(i,N) {
        int64_t a;int64_t b;
        cin >> a>> b;
        tot += a;
        B.push_back(make_pair(b,a));
    }
    
    sort(allrange(B));
    int64_t ntot = 0;
    bool flg=true;
    
    bool uselast = false;
    repit(itr,B){
        if(ntot>itr->first) 
        {
            if(!uselast && ((tot-itr->second)<=itr->first)){
                uselast=true;
                continue;
            }
            flg=false; break;
        } 
        ntot += itr->second;
    }
    

//    if(flg) prl(ans); else prl(-1);
    if(flg) prl("Yes"); else prl("No");
}
0