답안 #331532

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
331532 2020-11-28T20:17:10 Z jovan_b 은행 (IZhO14_bank) C++17
52 / 100
84 ms 14956 KB
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef long double ld;

vector <int> maske[20005];
int dp[1000005];
int dpp[1000005];
int a[25];
int b[25];

int main(){
    ios_base::sync_with_stdio(false);
	cout.precision(10);
	cout << fixed;

	int n, m;
	cin >> n >> m;
	for(int i=1; i<=n; i++){
        cin >> a[i];
	}
	for(int j=0; j<m; j++){
        cin >> b[j];
	}
	for(int mask=1; mask<(1<<m); mask++){
        int sum = 0;
        for(int j=0; j<m; j++){
            if((1<<j)&mask) sum += b[j];
        }
        maske[sum].push_back(mask);
	}
	dpp[0] = 1;
	for(int i=0; i<n; i++){
        for(int mask=0; mask<(1<<m); mask++){
            if(!dpp[mask]) continue;
            for(auto c : maske[a[i+1]]){
                if(!(c&mask)) dp[mask|c] = 1;
            }
        }
        for(int mask=0; mask<(1<<m); mask++){
            dpp[mask] = dp[mask];
            dp[mask] = 0;
        }
	}
	for(int i=0; i<(1<<m); i++){
        if(dpp[i]){
            cout << "YES\n";
            return 0;
        }
	}
	cout << "NO\n";
    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 876 KB Output is correct
2 Correct 1 ms 876 KB Output is correct
3 Correct 1 ms 876 KB Output is correct
4 Correct 3 ms 1260 KB Output is correct
5 Incorrect 84 ms 14956 KB Output isn't correct
6 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 876 KB Output is correct
2 Correct 1 ms 876 KB Output is correct
3 Correct 1 ms 876 KB Output is correct
4 Correct 1 ms 876 KB Output is correct
5 Correct 1 ms 876 KB Output is correct
6 Correct 1 ms 876 KB Output is correct
7 Correct 1 ms 876 KB Output is correct
8 Correct 1 ms 876 KB Output is correct
9 Correct 1 ms 876 KB Output is correct
10 Correct 1 ms 876 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 1132 KB Output is correct
2 Correct 3 ms 1132 KB Output is correct
3 Correct 3 ms 1132 KB Output is correct
4 Correct 2 ms 1132 KB Output is correct
5 Correct 2 ms 1132 KB Output is correct
6 Correct 3 ms 1132 KB Output is correct
7 Correct 3 ms 1132 KB Output is correct
8 Correct 2 ms 1132 KB Output is correct
9 Correct 3 ms 1132 KB Output is correct
10 Correct 3 ms 1132 KB Output is correct
11 Correct 2 ms 1004 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 876 KB Output is correct
2 Correct 1 ms 876 KB Output is correct
3 Correct 1 ms 876 KB Output is correct
4 Correct 3 ms 1260 KB Output is correct
5 Incorrect 84 ms 14956 KB Output isn't correct
6 Halted 0 ms 0 KB -