小蓝打算采购 n 种物品,每种物品各需要 1 个。
小蓝所住的位置附近一共有 m 个店铺,每个店铺都出售着各种各样的物品。
第 i 家店铺会在第 si 天至第 ti 天打折,折扣率为 pi,对于原件为 b 的物品,折后价格为。其它时间需按原价购买。
小蓝很忙,他只能选择一天的时间去采购这些物品。请问,他最少需要花多少钱才能买到需要的所有物品。
题目保证小蓝一定能买到需要的所有物品。
输入的第一行包含两个整数 n, m,用一个空格分隔,分别表示物品的个数和店铺的个数。
接下来依次包含每个店铺的描述。每个店铺由若干行组成,其中第一行包含四个整数 si , ti , pi , ci,相邻两个整数之间用一个空格分隔,分别表示商店优惠的起始和结束时间、折扣率以及商店内的商品总数。之后接 ci 行,每行包含两个整数 aj , bj ,用一个空格分隔,分别表示该商店的第 j 个商品的类型和价格。商品的类型由 1 至 n 编号。
输出一行包含一个整数表示小蓝需要花费的最少的钱数。
2 2 1 2 89 1 1 97 3 4 77 1 2 15
101
对于 40% 的评测用例,n, m ≤ 500 ,si ≤ ti ≤ 100 , ∑ ci ≤ 2000 ;
对于 70% 的评测用例,n, m ≤ 5000 , ∑ ci ≤ 20000 ;
对于所有评测用例,1 ≤ n, m ≤ 100000 ,1 ≤ ci ≤ n , ∑ ci ≤ 400000 , 1 ≤ si ≤ ti ≤ 109 ,1 < pi < 100 ,1 ≤ aj ≤ n ,1 ≤ bj ≤ 109 。
本试题适用于用c/c++/java代码来完成,如用Python代码出现时间超限问题建议转到:https://www.dotcpp.com/oj/problem2730.html链接