Submission #896943

# Submission time Handle Problem Language Result Execution time Memory
896943 2024-01-02T11:22:34 Z pcc Kitchen (BOI19_kitchen) C++14
0 / 100
23 ms 820 KB
#include <bits/stdc++.h>
using namespace std;

#define ll long long
#define pll pair<ll,ll>
#define pii pair<int,int>
#define fs first
#define sc second
#define tlll tuple<ll,ll,ll>

const int mxn = 303;
const int mxc = mxn*mxn;

int N,M,K,arr[mxn],dp[mxc],brr[mxn];

int main(){
	ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
	cin>>N>>M>>K;
	int sum = 0;
	for(int i = 0;i<N;i++)cin>>arr[i],sum += arr[i];
	for(int i = 0;i<M;i++)cin>>brr[i];
	for(int i = 0;i<N;i++){
		if(arr[i]<K){
			cout<<"impossible";
			return 0;
		}
	}
	memset(dp,-1,sizeof(dp));
	dp[0] = 0;
	for(int i = 0;i<M;i++){
		for(int j = mxc-1;j>=brr[i];j--){
			if(dp[j-brr[i]] != -1)dp[j] = max(dp[j],dp[j-brr[i]]+min(brr[i],N));
		}
	}
	for(int i = sum;i<mxc;i++){
		if(dp[i]>=N*K){
			cout<<i-sum;
			return 0;
		}
	}
	cout<<"impossible";
	return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 604 KB Output is correct
2 Correct 0 ms 604 KB Output is correct
3 Correct 0 ms 600 KB Output is correct
4 Correct 1 ms 604 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Incorrect 0 ms 348 KB Output isn't correct
7 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 604 KB Output is correct
2 Correct 0 ms 604 KB Output is correct
3 Correct 0 ms 600 KB Output is correct
4 Correct 1 ms 604 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Incorrect 0 ms 348 KB Output isn't correct
7 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 18 ms 600 KB Output is correct
2 Correct 15 ms 820 KB Output is correct
3 Correct 20 ms 600 KB Output is correct
4 Correct 22 ms 604 KB Output is correct
5 Incorrect 23 ms 604 KB Output isn't correct
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 3 ms 604 KB Output is correct
2 Correct 3 ms 604 KB Output is correct
3 Correct 3 ms 604 KB Output is correct
4 Correct 5 ms 604 KB Output is correct
5 Incorrect 1 ms 348 KB Output isn't correct
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 604 KB Output is correct
2 Correct 0 ms 604 KB Output is correct
3 Correct 0 ms 600 KB Output is correct
4 Correct 1 ms 604 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Incorrect 0 ms 348 KB Output isn't correct
7 Halted 0 ms 0 KB -