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>>dp(n,vector<ll>(5001,0));
  16. dp[0][v[0]]=1;
  17. dp[0][0]=1;
  18. for(ll i=1;i<n;i++){
  19. dp[i][0]=1;
  20. for(ll j=1;j<=5000;j++){
  21. dp[i][j]=dp[i-1][j];
  22. if(j-v[i]>=0)dp[i][j]+=dp[i-1][j-v[i]];
  23. }
  24. }
  25. ll ans=0;
  26. for(ll i=mx;i<=5000;i++){
  27. ans+=dp[n-1][i];
  28. }
  29. cout<<ans<<"\n";
  30. }
  31.  
  32. int main(){
  33. ios_base::sync_with_stdio(false);
  34. cin.tie(NULL);
  35. solve();
  36. return 0;
  37. }
Success #stdin #stdout 0s 5252KB
stdin
7
1 2 3 4 5 5 5
stdout
121