import sys readline=sys.stdin.readline N=int(readline()) inf=1<<30 dp=[inf]*(10**5+1) dp[0]=0 for _ in range(N): a,b=map(int,readline().split()) prev=dp dp=[inf]*(10**5+1) for i in range(10**5+1): if i>=a: dp[i]=min(prev[i-a],prev[i]+b) else: dp[i]=prev[i]+b ans=min(max(i,dp[i]) for i in range(10**5+1)) print(ans)