Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
147568 | 林泽豪 | 对抗赛 | C++ | 通过 | 100 | 0 MS | 260 KB | 368 | 2024-05-18 16:19:43 |
#include<bits/stdc++.h> using namespace std; const int N=200; bool f[N][N]; int n,v[N],m=0,maxn; int main(){ cin>>n; for(int i=1;i<=n;i++){cin>>v[i];m+=v[i];} m>>=1; f[0][0]=1; for(int i=1;i<=n;i++) for(int j=min(i,n/2);j>=1;j--) for(int k=m;k>=v[i];k--) f[j][k]=(f[j][k]||f[j-1][k-v[i]]); for(int i=m;i>=0;i--)if(f[n/2][i]){cout<<i;break;} }