Submission #392369

#TimeUsernameProblemLanguageResultExecution timeMemory
392369SirCovidThe19thBank (IZhO14_bank)C++14
0 / 100
115 ms31996 KiB
#include <bits/stdc++.h>
using namespace std;
void fileReading() {
    ios_base::sync_with_stdio(0); cin.tie(0); 
    #ifndef ONLINE_JUDGE
    freopen("bank.in", "r", stdin);
    freopen("bank.out", "w", stdout);
    #endif 
}
int main(){
    fileReading();
    //n people, m banknotes
    int n, m;
    cin >> n >> m;
    int salary[n];
    int banknote[m];

    int store = 0;
    for (int i = 0; i < n; i++){
        cin >> salary[i];
        salary[i] += store;
        store = salary[i];
    }
    for (int i = 0; i < m; i++) 
        cin >> banknote[i];
    
    int dp[1<<m];
    int sum[1<<m];
    memset(dp, 0, sizeof(dp));
    memset(sum, 0, sizeof(sum));

    for (int i = 0; i < (1<<m); i++){
        if (dp[i] == n){
            cout<<"YES"<<endl;
            return 0;
        }
        for (int j = 0; j < m; j++){
            if ((i&(1<<j)) != 0) continue;
            sum[i^(1<<j)] = sum[i]+banknote[j];
            if (salary[dp[i]] == sum[i]+banknote[j])
                dp[i^(1<<j)] = max(dp[i^(1<<j)], dp[i]+1);
            else
                dp[i^(1<<j)] = max(dp[i^(1<<j)], dp[i]);
        }
    }
    cout<<"NO"<<endl;
} 

Compilation message (stderr)

bank.cpp: In function 'void fileReading()':
bank.cpp:6:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
    6 |     freopen("bank.in", "r", stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
bank.cpp:7:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
    7 |     freopen("bank.out", "w", stdout);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...