Submission #886691

#TimeUsernameProblemLanguageResultExecution timeMemory
886691vjudge1San (COCI17_san)C++17
48 / 120
60 ms456 KiB
#include <bits/stdc++.h>
using namespace std;
using i64 = long long;

#define ONLINE_JUDGE
void solve() {
    int n; 
    i64 k;
    cin >> n >> k;

    vector <int> h(n), g(n);
    for(int i = 0; i < n; i++) {
        cin >> h[i] >> g[i];
    }

    int ans = 0;
    for(int mask = 0; mask < (1 << n); mask++) {
        int last = 0;
        i64 sum = 0;
        bool ok = true;
        for(int i = 0; i < n; i++) {
            if(mask & (1 << i)) {
                if(h[i] < last) {
                    ok = false;
                    break;
                }

                last = h[i];
                sum += g[i];
            }
        }

        ans += (sum >= k && ok);
    }

    cout << ans;
    
    return;
}

signed main() {
    #ifndef ONLINE_JUDGE
        freopen("in.txt", "r", stdin);
        freopen("out.txt", "w", stdout);
    #endif

    ios_base::sync_with_stdio(false);
    cin.tie(NULL); cout.tie(NULL);

    int t = 1; //cin >> t;
    for(int i = 1; i <= t; i++) {
        solve();
    }

    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...