githubEdit

10-三元组

给定两个长度为 nn 的整数序列 s1,s2,…,sn 和 c1,c2,…,cn

请你找到一个三元组 (i,j,k),满足以下所有条件:

  • i<j<k

  • si<sj<sk

  • ci+cj+ck 尽可能小

输出 ci+cj+ck 的最小可能值。

输入格式

第一行包含整数 nn。

第二行包含 nn 个整数 s1,s2,…,sns1,s2,…,sn。

第三行包含 nn 个整数 c1,c2,…,cnc1,c2,…,cn。

输出格式

如果满足条件的三元组不存在,则输出 −1−1。

否则,输出 ci+cj+ckci+cj+ck 的最小可能值。

数据范围

前 55 个测试点满足 3≤n≤103≤n≤10。 所有测试点满足 3≤n≤30003≤n≤3000,1≤si≤1091≤si≤109,1≤ci≤1081≤ci≤108。

输入样例1:

5
2 4 5 4 10
40 30 20 10 40

输出样例1:

输入样例2:

输出样例2:

输入样例3:

输出样例3:

Last updated