提交时间:2023-12-11 13:44:11

运行 ID: 115409

#include<bits/stdc++.h> using namespace std; int f[101][101],st[111111]; int n,mid,sum; int main() { cin>>n; for(int i=1;i<=n;i++){ cin>>st[i]; sum+=st[i]; } mid=sum/2; for(int i=1;i<=n;i++){ for(int j=mid;j>=1;j--){ f[i][j]=f[i-1][j]; if(j>=st[i]) f[i][j]=max(f[i-1][j],f[i-1][j-st[i]]+st[i]); } } cout<<abs(sum-2*f[n][mid]); return 0; }