結果
問題 | No.3090 Knapsack Function |
ユーザー | SnowBeenDiding |
提出日時 | 2022-04-01 21:50:43 |
言語 | C++23 (gcc 12.3.0 + boost 1.83.0) |
結果 |
AC
|
実行時間 | 22 ms / 2,000 ms |
コード長 | 3,680 bytes |
コンパイル時間 | 4,330 ms |
コンパイル使用メモリ | 308,096 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-04-30 13:45:04 |
合計ジャッジ時間 | 5,209 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 2 ms
6,812 KB |
testcase_01 | AC | 2 ms
6,940 KB |
testcase_02 | AC | 2 ms
6,944 KB |
testcase_03 | AC | 2 ms
6,944 KB |
testcase_04 | AC | 1 ms
6,944 KB |
testcase_05 | AC | 1 ms
6,944 KB |
testcase_06 | AC | 1 ms
6,940 KB |
testcase_07 | AC | 1 ms
6,944 KB |
testcase_08 | AC | 2 ms
6,940 KB |
testcase_09 | AC | 1 ms
6,940 KB |
testcase_10 | AC | 1 ms
6,944 KB |
testcase_11 | AC | 1 ms
6,944 KB |
testcase_12 | AC | 1 ms
6,944 KB |
testcase_13 | AC | 1 ms
6,940 KB |
testcase_14 | AC | 1 ms
6,944 KB |
testcase_15 | AC | 2 ms
6,940 KB |
testcase_16 | AC | 15 ms
6,940 KB |
testcase_17 | AC | 22 ms
6,944 KB |
testcase_18 | AC | 22 ms
6,944 KB |
testcase_19 | AC | 14 ms
6,940 KB |
testcase_20 | AC | 22 ms
6,944 KB |
ソースコード
#include <atcoder/all> using namespace atcoder; using mint = modint998244353; //using mint = modint1000000007; //using mint = modint;//mint::set_mod(MOD); const long long MOD = 998244353; //const long long MOD = 1000000007; #include <bits/stdc++.h> #define rep(i,a,b) for(ll i=(ll)(a);i<(ll)(b);i++) #define repeq(i,a,b) for(ll i=(ll)(a);i<=(ll)(b);i++) #define repreq(i,a,b) for(ll i=(ll)(a);i>=(ll)(b);i--) #define each(a,b) for(auto& (a):(b)) #define endl '\n' #define cYes cout<<"Yes"<<endl #define cNo cout<<"No"<<endl #define sortr(v) sort(v,greater<>()) #define pb push_back #define mp make_pair #define mt make_tuple #define tget(a,b) get<b>(a) #define FI first #define SE second #define ALL(v) (v).begin(),(v).end() #define INFLL 3000000000000000100LL #define INF 1000000100 #define PI acos(-1.0L) #define TAU (PI*2.0L) using namespace std; typedef long long ll; typedef pair<ll,ll> Pll; typedef tuple<ll,ll,ll> Tlll; typedef vector<int> Vi; typedef vector<Vi> VVi; typedef vector<ll> Vl; typedef vector<Vl> VVl; typedef vector<VVl> VVVl; typedef vector<Tlll> VTlll; typedef vector<mint> Vm; typedef vector<Vm> VVm; typedef vector<string> Vs; typedef vector<double> Vd; typedef vector<char> Vc; typedef vector<bool> Vb; typedef vector<Pll> VPll; typedef priority_queue<ll> PQl; typedef priority_queue<ll,vector<ll>,greater<ll>> PQlr; /* print */ template <typename T> ostream& operator<<(ostream& os,const vector<T> &V){ int N=V.size();if(N==0){os<<endl;return os;} rep(i,0,N-1){os<<V[i]<<' ';}os<<V[N-1]<<endl;return os;} template <typename T> ostream& operator<<(ostream& os,const vector<vector<T>> &V){ int N=V.size();rep(i,0,N)os<<V[i];return os;} template <typename T,typename S> ostream& operator<<(ostream&os,pair<T,S>const&P){os<<P.FI<<' '<<P.SE;return os;} ostream& operator<<(ostream&os,mint const&M){os<<M.val();return os;} /* useful */ template<typename T>void Vin(vector<T> &v){int n=v.size();rep(i,0,n)cin>>v[i];} template<typename T>int SMALLER(vector<T> &a,T x){ return lower_bound(a.begin(),a.end(),x)-a.begin();} template<typename T>int orSMALLER(vector<T> &a,T x){ return upper_bound(a.begin(),a.end(),x)-a.begin();} template<typename T>int BIGGER(vector<T>&a,T x){return a.size()-orSMALLER(a,x);} template<typename T>int orBIGGER(vector<T>&a,T x){return a.size()-SMALLER(a,x);} template<typename T>int COUNT(vector<T> &a,T x){ return upper_bound(ALL(a),x)-lower_bound(ALL(a),x);} template<typename T>bool chmax(T &a,T b) {if(a<b){a=b;return 1;}return 0;} template<typename T>bool chmin(T &a,T b) {if(a>b){a=b;return 1;}return 0;} template<typename T>void press(T &v){v.erase(unique(ALL(v)),v.end());} template<typename T>vector<int> zip(vector<T> b){pair<T,int> p[b.size()+10]; int a=b.size();vector<int> l(a);for(int i=0;i<a;i++) p[i]=mp(b[i],i); sort(p,p+a);int w=0;for(int i=0;i<a;i++){if(i&&p[i].first!=p[i-1].first)w++; l[p[i].second]=w;}return l;} template<typename T>vector<T> vis(vector<T> &v){ vector<T> S(v.size()+1);rep(i,1,S.size())S[i]+=v[i-1]+S[i-1];return S;} ll dem(ll a,ll b){return((a+b-1)/(b));} ll dtoll(double d,int g){return round(d*pow(10,g));} const double EPS = 1e-10; void init(){ cin.tie(0);cout.tie(0);ios::sync_with_stdio(0);cout<<fixed<<setprecision(12);} /********************************** START **********************************/ void sol() { int n,m; cin >> n; Vi v(n),w(n); int ni = 0,san = 0; rep(i,0,n) { cin >> v[i] >> w[i]; if(w[i] == 1) { cYes; return; } if(w[i] == 2) chmax(ni, v[i]); if(w[i] == 3) chmax(san, v[i]); } if(ni && san && ni < san) cYes; else cNo; } int main() { init(); int q = 1; //cin >> q; while(q--) sol(); return 0; }