Submission #728573

# Submission time Handle Problem Language Result Execution time Memory
728573 2023-04-22T16:08:06 Z penguin133 Kas (COCI17_kas) C++17
80 / 100
263 ms 524288 KB
#include <bits/stdc++.h>
using namespace std;
 
#define int long long
#define pi pair<int, int>
#define pii pair<int, pi>
#define fi first
#define se second
#ifdef _WIN32
#define getchar_unlocked _getchar_nolock
#endif
mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());
 
pair <bool, int> dp[501][100001];
int n, A[505];
 
void solve(){
	cin >> n;
	int sm = 0;
	for(int i=1;i<=n;i++)cin >> A[i], sm += A[i];
	sort(A+1, A+n+1);
	dp[0][50000] = {1, 0};
	for(int i=1;i<=n;i++){
		for(int j=0;j<=100000;j++){
			dp[i][j] = dp[i-1][j];
			if(j - A[i] >= 0 && dp[i-1][j-A[i]].fi){
				if(!dp[i][j].fi)dp[i][j] = dp[i-1][j-A[i]], dp[i][j].se += A[i];
				else{
					dp[i][j].se = max(dp[i][j].se, dp[i-1][j-A[i]].se + A[i]);
				}
			}
			if(j + A[i] <= 100000 && dp[i-1][j+A[i]].fi){
				if(!dp[i][j].fi)dp[i][j] = dp[i-1][j+A[i]], dp[i][j].se += A[i];
				else{
					dp[i][j].se = max(dp[i][j].se, dp[i-1][j+A[i]].se + A[i]);
				}
			}
		}
	}
	int mx = dp[n][50000].se/2;
	cout << sm - mx;
}
 
main(){
	ios::sync_with_stdio(0);cin.tie(0);
	int tc = 1;
	//cin >> tc;
	for(int tc1=1;tc1<=tc;tc1++){
		// cout << "Case #" << tc1 << ": ";
		solve();
	}
}

Compilation message

kas.cpp:44:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   44 | main(){
      | ^~~~
# Verdict Execution time Memory Grader output
1 Correct 8 ms 15956 KB Output is correct
2 Correct 9 ms 15948 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 8 ms 15944 KB Output is correct
2 Correct 9 ms 15988 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 9 ms 16000 KB Output is correct
2 Correct 12 ms 17500 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 10 ms 19028 KB Output is correct
2 Correct 12 ms 20636 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 11 ms 20692 KB Output is correct
2 Correct 11 ms 20688 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 25 ms 55100 KB Output is correct
2 Correct 30 ms 62916 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 38 ms 70740 KB Output is correct
2 Correct 40 ms 78600 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 151 ms 313332 KB Output is correct
2 Correct 168 ms 391776 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 226 ms 470088 KB Output is correct
2 Runtime error 263 ms 524288 KB Execution killed with signal 9
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 234 ms 524288 KB Execution killed with signal 9
2 Halted 0 ms 0 KB -