Tornbygge

Lille Dirk Ref vill bygga ett så högt torn som möjligt med sina N klossar. Alla klossar är rätblock med en kvadratisk botten, och ett torn är en mängd med klossar som är staplade direkt ovanpå varandra (det får inte ligga två klossar bredvid varandra). För att tornet inte ska bli instabilt och rasa måste varje kloss bredd (alltså sidan på den kvadratiska botten den står på) alltid vara strikt mindre än bredden av klossen den står på. Alltså byggs tornet med de bredaste klossarna i botten, och smalare klossar ju högre upp man kommer. Dessutom måste även varje kloss vara minst lika högt som klossen nedanför, för att tornet ska bli snyggt. Hjälp Dirk att räkna ut hur högt torn han maximalt kan bygga.

Indata

Den första raden innehåller ett heltal $N$, antalet klossar Dirk har. Därefter följer $N$ rader, en för varje kloss. På den $i$:te av dessa rader står två heltal, det $i$:te blockets bredd $W_ i$, $1 \leq W_ i \leq 10^9$ och höjd $H_ i$, $1 \leq H_ i \leq 10^9$.

Output

Skriv ut en rad med ett heltal: den maximala höjden som Dirk kan bygga.

Poängsättning

Din lösning kommer att testas på en mängd testfallsgrupper. För att få poäng för en grupp så måste du klara alla testfall i gruppen.

Grupp

Poängvärde

Gränser

Övrigt

1

19

$1 \leq N \leq 10$, $H_ i \le 10^5$

$W_ i = N+1 - i$, d.v.s. bredderna är $N$, $N-1$, $\dots $, $1$, i ordning.

2

35

$1 \leq N \leq 500$, $H_ i \le 10^5$

$W_ i = N+1 - i$

3

20

$1 \leq N \leq 500$, $H_ i \le 10^5$

 

4

26

$1 \leq N \leq 10^5$

 
Sample Input 1 Sample Output 1
5
5 1
4 2
3 5
2 3
1 4
10
Sample Input 2 Sample Output 2
9
6 4
5 7
2 6
1 7
9 1
8 2
7 5
5 9
5 3
22
Sample Input 3 Sample Output 3
3
1 2
1 2
1 3
3