Submission #796491

# Submission time Handle Problem Language Result Execution time Memory
796491 2023-07-28T12:39:32 Z mindiyak Bank (IZhO14_bank) C++17
0 / 100
1 ms 316 KB
#pragma GCC optimize("O3")
#pragma GCC target("sse4")
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
typedef pair<int, int> pi;
typedef pair<ll, ll> pl;
typedef pair<ld, ld> pd;
typedef vector<int> vi;
typedef vector<bool> vb;
typedef vector<vector<int>> vvi;
typedef vector<ld> vd;
typedef vector<ll> vl;
typedef vector<pi> vpi;
typedef vector<pl> vpl;
#define FOR(i, a, b) for (ll i = a; i < (b); i++)
#define F0R(i, a) for (ll i = 0; i < (a); i++)
#define FORd(i, a, b) for (ll i = (b)-1; i >= a; i--)
#define F0Rd(i, a) for (ll i = (a)-1; i >= 0; i--)
#define trav(a, x) for (auto &a : x)
#define uid(a, b) uniform_int_distribution<int>(a, b)(rng)
#define len(x) (int)(x).size()
#define mp make_pair
#define pb push_back
#define fst first
#define nl endl
#define sec second
#define lb lower_bound
#define ub upper_bound
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()
#define ins insert
const int MOD = 1000000007;
const int MX = INT_MAX;
const int MN = INT_MIN;
void init()
{
#ifndef ONLINE_JUDGE
    freopen("input.in", "r", stdin);
    freopen("output.out", "w", stdout);
#endif
}
void fastIO()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
}

void solve()
{
    int n,m;cin>>n>>m;

    vi people(n),money(m);
    FOR(i,0,n)cin>>people[i];
    FOR(i,0,m)cin>>money[i];

    sort(people.rbegin(),people.rend());
    sort(money.rbegin(),money.rend());

    int money_counter = 0;
    while(true){
        if(people.size() == 0)break;
        if(money_counter == m)break;
        if(money[money_counter] > people[0]){
            money_counter++;
        }else{
            // cout << people[0] << " " << money_counter << " " << money[money_counter] << endl;
            people[0] -= money[money_counter];
            if(people[0] == 0)people.erase(people.begin());
            else sort(people.rbegin(),people.rend());
        }
    }

    // cout << people.size() << " " << money_counter << endl;

    if(people.size() == 0){
        cout<<"YES"<<endl;
        return;
    }cout<<"NO"<<endl;
}


int main()
{
    fastIO();
    // init();
    int t = 1;
    // cin >> t;
    while (t--)
        solve();
    return 0;
}

Compilation message

bank.cpp: In function 'void init()':
bank.cpp:40:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   40 |     freopen("input.in", "r", stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
bank.cpp:41:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   41 |     freopen("output.out", "w", stdout);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 316 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Incorrect 1 ms 212 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 316 KB Output isn't correct
2 Halted 0 ms 0 KB -