Submission #683009

# Submission time Handle Problem Language Result Execution time Memory
683009 2023-01-17T13:48:09 Z maks007 Bank (IZhO14_bank) C++14
44 / 100
68 ms 16732 KB
#include "bits/stdc++.h"

using namespace std;

#define int long long

signed main () {
	ios::sync_with_stdio(0);
	cin.tie(0); cout.tie(0);
	int n,m;
	cin >> n >> m;
	vector <int> a(n), b(m);
	for(int i = 0; i < n; i ++) cin >> a[i];
	for(int i = 0; i < m; i ++) cin >> b[i];
	vector <vector <int>> dp(n, vector <int> (1 << m, 0));
	for(int i = 0; i < n; i ++) {
		for(int mask = 0; mask < (1 << m); mask ++) {
			int sum = 0;
			for(int j = 0; j < m; j ++) {
				if(mask & (1 << j)) sum += b[j];
			}
			// cout << sum << " " << a[i] << "\n";
			if(sum == a[i]) {
				if(i == 0) dp[i][mask]=1;
				else {
					for(int mask2 = 0; mask2 < (1 << m); mask2 ++) {
						if(mask2 & mask) continue;
						if(dp[i-1][mask2]==1){
							dp[i][mask^mask2]=1;
							break;
						}
					}
				}
			}
		}
	}
	// for(int i = 0; i < n; i ++) {
	// 	for(int mask = 0; mask < (1 << m); mask ++) {
	// 		cout << dp[i][mask] << " " << i << " " << mask << "\n";
	// 	}
	// }
	if(count(dp[n-1].begin(), dp[n-1].end(), 1)) cout << "YES";
	else cout << "NO";
	return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 2 ms 724 KB Output is correct
5 Correct 68 ms 16724 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 1 ms 340 KB Output is correct
8 Correct 68 ms 16732 KB Output is correct
9 Correct 66 ms 16724 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 340 KB Output is correct
5 Correct 1 ms 312 KB Output is correct
6 Correct 1 ms 340 KB Output is correct
7 Correct 1 ms 340 KB Output is correct
8 Correct 1 ms 340 KB Output is correct
9 Correct 1 ms 340 KB Output is correct
10 Correct 1 ms 340 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 7 ms 1364 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 2 ms 724 KB Output is correct
5 Correct 68 ms 16724 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 1 ms 340 KB Output is correct
8 Correct 68 ms 16732 KB Output is correct
9 Correct 66 ms 16724 KB Output is correct
10 Correct 1 ms 340 KB Output is correct
11 Correct 1 ms 340 KB Output is correct
12 Correct 1 ms 212 KB Output is correct
13 Correct 1 ms 340 KB Output is correct
14 Correct 1 ms 312 KB Output is correct
15 Correct 1 ms 340 KB Output is correct
16 Correct 1 ms 340 KB Output is correct
17 Correct 1 ms 340 KB Output is correct
18 Correct 1 ms 340 KB Output is correct
19 Correct 1 ms 340 KB Output is correct
20 Incorrect 7 ms 1364 KB Output isn't correct
21 Halted 0 ms 0 KB -