Pagini recente » Cod sursa (job #2972456) | Cod sursa (job #363527) | Cod sursa (job #1856598) | Cod sursa (job #560084) | Cod sursa (job #2137265)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("jocul.in");
ofstream fout("jocul.out");
const int NMax = 1005;
const int valmax = 100005;
int dp[valmax/2], n;
int s;
int v[NMax];
void Read()
{
fin >> n;
for(int i=1; i<=n; ++i)
{
fin >> v[i];
s+=v[i];
}
}
void Dinamica()
{
for(int i=1; i<=n; ++i)
for(int j=s/2; j>=v[i]; --j)
dp[j] = max(dp[j], dp[j-v[i]]+v[i]);
fout << dp[s/2] << " " << s-dp[s/2];
}
int main()
{
Read();
Dinamica();
return 0;
}