n,d,K=map(int,input().split()) a=list(map(int,input().split())) c=list(map(int,input().split())) inf=1<<80 dp=[[-inf for _ in range(K+1)] for _ in range(d+1)] dp[0][0]=0 for i in range(n): for j in range(d-1,-1,-1): for k in range(K+1): if dp[j][k]==-inf: continue dp[j+1][min(K,k+c[i])]=max(dp[j+1][min(K,k+c[i])],dp[j][k]+a[i]) print("No" if dp[-1][-1]==-inf else dp[-1][-1])