Submission #464447

# Submission time Handle Problem Language Result Execution time Memory
464447 2021-08-13T08:48:30 Z fuad27 Kitchen (BOI19_kitchen) C++17
0 / 100
61 ms 288 KB
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
#define vii vector<pair<int, int>>
#define vi vector<int>
#define vl vector<long long>
#define vll vector<pair<long long, long long>>
#define mp make_pair
#define pb push_back
#define rep(i, a, b) for(int i = a;i<=b;i++)
#define f first
#define s second
#define FIO ios_base::sync_with_stdio(0);cin.tie(0);
#define start int tt;cin>>tt;rep(testcase, 1, tt)
#define print(k) cout<<"Case #"<<testcase<<": "<<k<<"\n";
#define endl "\n"
#define DEBUG(k) cerr<<k<<"\n";
void solve() {
	int n, m, k, sum = 0;
	cin >> n >> m >> k;
	int b[m], need = 0, tmp;
	rep(i, 0, n-1){
		cin>>tmp;need+=tmp;
	}
	rep(i, 0, m-1){
		cin>>b[i];
		sum+=b[i];
	}
	vector<bool> dp(sum+1, 0);
	dp[0] = 1;
	for(int i = sum;i>=0;i--) {
		for(int j = 0;j<m;j++) {
			if(b[j] > i)continue;
			dp[i] = dp[i - b[j]];
		}
	}
	int index = -1;
	for(int i = need;i<=sum;i++) {
		if(dp[i] == 1){
			index = i;
			break;
		}
	}
	if(index == -1)cout<<"Impossible"<<endl;
	else cout<<index - need<<endl;
}
int main () {/*
	#ifndef ONLINE_JUDGE
	freopen("stdin", "r", stdin);
	freopen("stdout", "w", stdout);
	freopen("stderr", "w", stderr);
	#endif*/
	int t = 1;
//	cin >> t;
	while(t--) {
		solve();
	}
	return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Incorrect 0 ms 204 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Incorrect 0 ms 204 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 61 ms 288 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Incorrect 0 ms 204 KB Output isn't correct
4 Halted 0 ms 0 KB -