[SDOI2016]数字配对
题号:NC20386
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

有 n 种数字,第 i 种数字是 ai、有 bi 个,权值是 ci
若两个数字 ai、aj 满足,ai 是 aj 的倍数,且 ai/aj 是一个质数, 那么这两个数字可以配对,并获得 ci×cj 的价值。
一个数字只能参与一次配对,可以不参与配对。 
在获得的价值总和不小于 0 的前提下,求最多进行多少次配对。

输入描述:

第一行一个整数 n。 
第二行n个整数a1、a2、……、an。 
第三行n个整数b1、b2、……、bn。 
第四行n个整数c1、c2、……、cn

输出描述:

一行一个数,最多进行多少次配对
示例1

输入

复制
3
2 4 8
2 200 7
-1 -2 1

输出

复制
4

备注:

测试点 1 ~ 3:
测试点 4 ~ 5:
测试点 6 ~ 10: