fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. long long dp[100001];
  4. int a[100001];
  5. int n,L,R;
  6. long long DP(int i)
  7. {
  8. if (i>100000) return 0;
  9. if (dp[i]!=-1) return dp[i];
  10. return dp[i]=max(DP(i+1),DP(i+R+1)+a[i]);
  11. }
  12. int main()
  13. {
  14. ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
  15. int t;
  16. cin>>t;
  17. while(t--)
  18. {
  19. memset(a,0,sizeof(a));
  20. memset(dp,-1,sizeof(dp));
  21. cin>>n>>L>>R;
  22. R=min(L,R);
  23. while(n--)
  24. {
  25. int x;
  26. cin>>x;
  27. a[x]+=x;
  28. }
  29. cout<<DP(0)<<endl;
  30. }
  31. }
  32.  
Time limit exceeded #stdin #stdout 5s 19416KB
stdin
Standard input is empty
stdout
0