#include<iostream>
using namespace std;
int main(){
    int n,t;
    int i[105],time[105];
    if(n<=0){
        cout<<"-1";
        return 0;
    }
    for(int i=0;i<n;i++){
        if(!(cin>>i[i])){
            cout<<"Invalid input";
            return 0;
        }
    }
    for(int i=0;i<n;i++){
        if(!(cin>>time[i])){
            cout<<"Invalid input";
            return 0;
        }
    }
    int dp[105]={0};
    for(int i=0;i<n;i++){
        for (int j=t;j>=time[i];j--){
            dp[j]=max(dp[j],dp[j-time[i]]+i[i]);
        }
    }
    cout<<dp[t];
    return 0;
}