#include using namespace std; using ll = long long; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); ll N, D, K; cin >> N >> D >> K; vector A(N), C(N); for(int i=0; i> A[i]; for(int i=0; i> C[i]; vector dp(D + 1, vector(K + 1, -ll(1e18))); dp[0][0] = 0; for(int i=0; i=0; j--) { for(int k=K; k>=0; k--) { if(dp[j][k] == -ll(1e18)) continue; dp[j+1][min(k+C[i], K)] = max(dp[j+1][min(k+C[i], K)], dp[j][k] + A[i]); } } } if(dp[D][K] == -ll(1e18)) cout << "No" << endl; else cout << dp[D][K] << endl; }