1 条题解
-
1HLBhahaqiu LV 8 MOD @ 2020-08-29 16:51:13
#include<iostream>
using namespace std;
int dp[5010][5010],h[110];
int main()
{
int n,i,j,k,sum=0;
cin>>n;
for(i=1;i<=n;i++)
cin>>h[i];
dp[0][0]=1;
for(i=1;i<=n;i++)
{
for(j=sum;j>=0;j--)
for(k=sum;k>=0;k--)
{
if(dp[j][k])
{
dp[j+h[i]][k]=1;
dp[j][k+h[i]]=1;
}
}
sum+=h[i];
}
for(i=sum;i>0;i--)
if(dp[i][i])
{
cout<<i;
return 0;
}
cout<<"Impossible";
return 0;
}
- 1