#include using namespace std; typedef long long ll; templatebool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (b #define vl vector #define vii vector> #define vll vector> #define vvi vector> #define vvl vector> #define vvii vector>> #define vvll vector>> #define vst vector #define pii pair #define pll pair #define pb push_back #define all(x) (x).begin(),(x).end() #define mkunique(x) sort(all(x));(x).erase(unique(all(x)),(x).end()) #define fi first #define se second #define mp make_pair #define si(x) int(x.size()) const int mod=998244353,MAX=2005; const ll INF=15LL<<58; ll dp[MAX][MAX]; ll sz[MAX]; ll c[MAX],s[MAX]; vi G[MAX]; void solve(int u){ sz[u]=s[u]; vector co(sz[u]+1,INF); co[s[u]]=c[u]; for(int to:G[u]){ solve(to); vector ne(sz[u]+sz[to]+1,INF); for(int i=0;i<=sz[u];i++){ for(int j=0;j<=sz[to];j++){ chmin(ne[i+j],co[i]+dp[to][j]); } } co=ne; sz[u]+=sz[to]; } for(int i=0;i<=sz[u];i++){ dp[u][i]=co[i]; } dp[u][0]=0; } int main(){ std::ifstream in("text.txt"); std::cin.rdbuf(in.rdbuf()); cin.tie(0); ios::sync_with_stdio(false); int N;cin>>N; for(int i=0;i>X; for(int i=1;i>p;p--; G[p].pb(i); } for(int i=1;i>c[i]>>s[i]; } solve(0); ll ans=INF; for(int i=X;i<=2000;i++) chmin(ans,dp[0][i]); cout<