Submission #824329

#TimeUsernameProblemLanguageResultExecution timeMemory
824329christinelynnBank (IZhO14_bank)C++17
19 / 100
9 ms316 KiB
#include<bits/stdc++.h> using namespace std; #define ll long long void print(string Z) { cout << Z << endl; } ll arr[23]; ll arr2[23]; ll ps[23]; ll N, M; bool check(ll idx, ll nd, ll ret, ll mks) { if(ret == nd) { return 1; } else if(idx > M || ret > nd) { return 0; } else { return (check(idx+1, nd, ret+arr2[idx], mks) || check(idx+1, nd, ret, mks)); } } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> N >> M; ll psa[N+3]; psa[0] = 0; for(int i=1; i<=N; i++) { cin >> arr[i]; psa[i] = psa[i-1] +arr[i]; } for(int i=0; i<M; i++) { cin >> arr2[i]; if(i == 0) { ps[i] = arr2[i]; } else { ps[i] = ps[i-1] + arr2[i]; } } sort(arr2, arr2+M, greater<>()); bool X = check(0, psa[N], 0, N); for(int i=1; i<N; i++) { X = X && check(0, psa[i], 0, N); } if(X) { print("YES"); } else { print("NO"); } 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...