#H1013. laundry

laundry

时间限制: 1s

空间限制: 512MB

小明的工厂又接到了一个大订单,该订单需要完成 qq 件产品。该产品的制作需要经过机器 A 和 机器 B 总共两道工序。

工厂里有 nn 个机器 A,编号为 1,2,...,n1, 2,...,n,以及 mm 个机器 B ,编号为 1,2,...m1, 2, ...m 。这些机器都非常小,因此,无论是机器 A 还是机器 B,都只能同时加工一件产品。

编号为 ii 的机器 A ,加工完一件产品(完成产品的第一道工序)需要 tit_i 小时,编号为 jj 的机器 B,加工完一件产品(完成产品第二道工序)需要 djd_j 小时。

小明作为厂长,肯定是要尽可能快的完成这一批产品。现在他请到精通编程的你帮忙计算一下最少需要多少时间?

注意:产品在机器 A 和机器 B 之间的转移我们认为是瞬时的,不需要时间,并且完成第一道工序的产品可以过一段时间再去做第二道工序。

输入格式

第一行三个整数 q,n,mq, n, m ,分别表示有 qq 件产品需要完成,现在有 nn 个机器 A,mm 个机器 B,整数之间用空格隔开。

第二行有 nn 个整数,t1,t2,...,tnt_1, t_2,...,t_n ,其中 tit_i 表示编号为 ii 的机器 A 完成产品的第一道工序所需的时间。

第三行有 mm 个整数,d1,d2,...,dmd_1, d_2, ..., d_m ,其中 did_i 表示编号为 ii 的机器 B 完成产品的第二道工序所需的时间。

输出格式

一行一个整数,表示完成这一批总共 qq 件产品所需的最少时间。

样例 1

输入

1 1 1
1200
34

输出

1234

样例解释 1

只有 11 件产品, 11 个机器 A 和 11 个机器 B ,那么产品只能经过 11 号机器 A 和 11 号机器 B ,总共耗时 12341234

样例 2

输入

2 3 2
100 10 1
10 10

输出

12

样例解释 2

22 件产品需要加工,耗时最小的方案是,第一个产品用 33 号机器 A ,加工完第一道工序后,用 11 号机器 B 完成第二道工序,总共耗时 1111 小时;第二个产品在第一个产品完成第一道工序后,也用 33 号机器 A 进行加工,然后再用 22 号机器 B 完成第二道工序,总共耗时 1212 小时,因此输出 1212

样例 3

见下发文件 laundry3.in/out.

数据范围

对于 10%10\% 的数据, q=1q = 1

对于另外 20%20\% 的数据, q,n,m10q, n, m \leq 10

对于另外 30%30\% 的数据, q1000q \leq 1000n,m100n, m \leq 100

对于 100%100\% 的数据, q106q \leq 10^6n,m105n, m \leq 10^5 ,并且保证 tit_idid_i 都在 int 范围之内。