shovels专题

CodeForces 1154F: Shovels Shop LCP

传送门 题目描述 小a要去水果店给队友们买水果,水果店有 n 个水果 第i个水果需要 a_i 元. 小a需要购买k个水果,每个水果只能购买一次 水果店有m种促销活动,第i种优惠表明小a可以依此优惠购买xi个水果,在购买的xi个水果中,yi个最便宜的可以免费赠送.即买xi个水果免较便宜的yi个水果的花费 小a可以使用同一种优惠多次,也可以使用多种优惠,但不可以同时使用两种优惠,当然,他也可

D - Buying Shovels 买铲子问题

简单说下中文意思: 某人要买n把铲子,商店里有k种类型的包装,如: 包装1里面有1把铲子, 包装2里面有2把铲子, …… 包装k里面有k把铲子。 商店中每一种包装都有无数种。 题目要我们帮他提供买最少包装数量的方案,要求每一种包装中铲子数量是相同的,也就是说这k种类型的包装只挑一种类型购买。 举个例子: 比如买8把铲子,店里有7种不同类型的包装,则只需要买2袋就够了,买两袋4类型包装的,每一

[codeforces 1360D] Buying Shovels

题目见: 1360D 题意:给n把铁锹和一个数k,可以选择任意一个数1<= t <= k,每次都购买t个铁锹,求最少的购买次数。 思路:求n的最大的但不大于k的因数,n除以这个因数就是答案。可以想到的是:1.在k>=n的情况下,只需要购买1次。2.正常来说,为了找到1到k范围内n的最大的因数,我们需要遍历1到k,但是这样很容易导致超时。优化的方法是:遍历1~√k,如果能找到一个数x被n整除,这说明