#P1498. 衣服打包

衣服打包

衣服打包

题目描述

小明正在为旅游准备衣服。 他一共有 nn 件衣服,其中第 ii 件衣服可以为他提供 aia_i 点保暖值。他准备从这 nn 件衣服中挑选一些携带,以便于接下来 mm 天的旅行。

对于接下来的 mm 天,每天均会有两个指标 tit_ixix_itit_i 表示这一天的冷热程度:若 ti=1t_i=1,则说明这天很冷,他的保暖值必须大于等于 xix_i;若 ti=2t_i=2,则说明这天很热,他的保暖值必须小于等于 xix_i

为了应对接下来的天气,每天小明可以从他携带的衣服之中挑选至少一件衣服穿在身上,并获得对应的保暖值。

现在他想知道,他至少要打包多少件衣服才能完美应对接下来的每一天。你任务是,求出小明最少要打包的衣服的数量,若不存在任何方案使得小明能完美应对接下来的每一天,请输出-1

输入格式

第一行,输入一个 nn,表示衣服总数。 第二行,nn 个整数 aia_i,表示每件衣服的保暖值。 第三行,输入一个 mm,表示接下来的天数。 接下来 mm 行,每行2个整数 tit_ixix_i,描述这一天的天气。

数据范围

n3n \le 3 m100m \le 100 ti{1,2}t_i \in \{1,2\} ai2×105a_i \le 2 \times 10^5 xi109x_i \le 10^9

输出格式

输出一个整数,表示答案。

样例 #1

样例输入 #1

3
2 3 5
1
1 10

样例输出 #1

3