#include #include using namespace std; struct o{ int v,t; bool operator <(o&q){ return v+t>n; for(int i=0;i>a[i].v>>a[i].t; sort(a,a+n); dp[0]=true; for(int i=0;i=0;j--){ if(dp[j]){ if(j+a[i].v<=10000)dp[j+a[i].v]=true; else ans=max(ans,j+a[i].v); } } } for(int i=10000;i>=0;i--){ if(dp[i]){ cout<