int n,a[100],b[100]; int dp[110][2d5]; int r=2d5; { rd(n,(a,b)(n)); rep(i,n)rep(j,1d5)dp[i+1][j]=min(dp[i][j]+b[i],j<a[i]?r:dp[i][j-a[i]]); rep(j,1d5)r<?=max(j,dp[n][j]); wt(r); }