답안 #464446

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
464446 2021-08-13T08:48:08 Z fuad27 Kitchen (BOI19_kitchen) C++17
0 / 100
2 ms 332 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;
}

Compilation message

kitchen.cpp: In function 'int main()':
kitchen.cpp:50:9: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   50 |  freopen("stdin", "r", stdin);
      |  ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
kitchen.cpp:51:9: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   51 |  freopen("stdout", "w", stdout);
      |  ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
kitchen.cpp:52:9: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   52 |  freopen("stderr", "w", stderr);
      |  ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 332 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 332 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 328 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 2 ms 332 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 332 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -