#include<bits/stdc++.h>
using namespace std;
int n,m,T,ans;
int mo[110],tim[110];
int dp[210][210][110];
//dp[i][j][k]表示j元钱,k分钟时的前i个同学的价值
int main(){
cin>>n>>m>>T;
for(int i=1;i<=n;i++)cin>>mo[i]>>tim[i];
for(int i=1;i<=n;i++){
for(int j=0;j<=m;j++){
for(int k=0;k<=T;k++){
if(j>=mo[i]&&k>=tim[i]){
dp[i][j][k]=max(dp[i-1][j][k],dp[i-1][j-mo[i]][k-tim[i]]+1);
}
else{
dp[i][j][k]=dp[i-1][j][k];
}
}
}
}
for(int i=1;i<=n;i++)
ans=max(ans,dp[i][m][T]);
cout<<ans;
return 0;
}