問題
あなたは,絵の展覧会を開催しようとしている.展覧会では,いくつかの絵を額縁にいれ,左から右に一列に並べて展示する.
展覧会で展示する候補となる絵が $N$ 枚あり,$1$ から $N$ までの番号が付けられている.絵($1$ ≦ $i$ ≦ $N$)の大きさは $S$$i$,価値は $V$$i$ である.
また,これらの絵を入れるための額縁が $M$ 枚あり,$1$ から $M$ までの番号が付けられている.額縁 $j$($1$ ≦ $j$ ≦ $M$)の大きさは $C$$j$ である.額縁 $j$ には,大きさが $C$$j$ 以下の絵のみ入れることができる.$1$ 枚の額縁には高々 $1$ 枚の絵しか入れることができない.
展示する絵はすべて何らかの額縁に入っていなければならない.見栄えを良くするため,展示する絵は以下の条件を満たさなければならない:
- 左右に隣り合うどの $2$ 枚の絵についても,右側の絵が入っている額縁の大きさは左側の絵が入っている額縁の大きさ以上である.
- 左右に隣り合うどの $2$ 枚の絵についても,右側の絵の価値は左側の絵の価値以上である.
展示候補の絵の枚数,額縁の枚数,及びそれらの大きさや価値が与えられたとき,展示する絵の枚数の最大値を求めるプログラムを作成せよ.
入力
入力は以下の形式で標準入力から与えられる.
$N$ $M$ $S$$1$ $V$$1$ : $S$$N$ $V$$N$ $C$$1$ : $C$$M$
出力
標準出力に,展覧会に展示する絵の枚数の最大値を $1$ 行で出力せよ.
制約
- $1$ ≦ $N$ ≦ $100000$.
- $1$ ≦ $M$ ≦ $100000$.
- $1$ ≦ $S$$i$ ≦ $1000000000$($1$ ≦ $i$ ≦ $N$).
- $1$ ≦ $V$$i$ ≦ $1000000000$($1$ ≦ $i$ ≦ $N$).
- $1$ ≦ $C$$j$ ≦ $1000000000$($1$ ≦ $j$ ≦ $M$).
小課題
- (10 点) $N$ ≦ $10$, $M$ ≦ $10$.
- (40 点) $N$ ≦ $1000$, $M$ ≦ $1000$.
- (50 点) 追加の制約はない.
入出力例
入力例 1
3 4 10 20 5 1 3 5 4 6 10 4
出力例 1
2
この入出力例では,左から順に(絵 $2$, 額縁 $2$), (絵 $1$, 額縁 $3$)と並べることで,$2$ 枚の絵を展示することができる.$3$ 枚以上の絵を展示することは出来ないので,$2$ を出力する.ここで,(絵 $i$, 額縁 $j$)は,額縁 $j$ に入った絵 $i$ を表す.
入力例 2
3 2 1 2 1 2 1 2 1 1
出力例 2
2
入力例 3
4 2 28 1 8 8 6 10 16 9 4 3
出力例 3
0
入力例 4
8 8 508917604 35617051 501958939 840246141 485338402 32896484 957730250 357542366 904165504 137209882 684085683 775621730 552953629 20004459 125090903 607302990 433255278 979756183 28423637 856448848 276518245 314201319 666094038 149542543
出力例 4
3