fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #define ll long long
  5.  
  6. void solve(){
  7. ll n,mx=0;
  8. cin>>n;
  9. vector<ll>v(n);
  10. for(ll i=0;i<n;i++){
  11. cin>>v[i];
  12. mx=max(mx,v[i]);
  13. }
  14.  
  15. vector<vector<ll>>dp2(n,vector<ll>(5001,0));
  16. dp2[0][v[0]]=v[0];
  17.  
  18. for(ll i=1;i<n;i++){
  19. for(ll j=1;j<=5000;j++){
  20. dp2[i][j]=dp2[i-1][j];
  21. if(j-v[i]>=0){
  22. dp2[i][j]+=dp2[i-1][j-v[i]]*v[i];
  23. }
  24. }
  25. }
  26.  
  27. ll ans=0;
  28. for(ll i=mx;i<=5000;i++){
  29. ans+=dp2[n-1][i];
  30. }
  31.  
  32. cout<<ans<<"\n";
  33. }
  34.  
  35. int main(){
  36. ios_base::sync_with_stdio(false);
  37. cin.tie(NULL);
  38. solve();
  39. return 0;
  40. }
Success #stdin #stdout 0s 5304KB
stdin
7
1 2 3 4 5 5 5
stdout
12954