CF535C.Tavas and Karafs
普及+/提高
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Karafs is some kind of vegetable in shape of an 1 × h rectangle. Tavaspolis people love Karafs and they use Karafs in almost any kind of food. Tavas, himself, is crazy about Karafs.

Each Karafs has a positive integer height. Tavas has an infinite 1-based sequence of Karafses. The height of the i-th Karafs is s__i = A + (i - 1) × B.
For a given m, let's define an m-bite operation as decreasing the height of at most m distinct not eaten Karafses by 1. Karafs is considered as eaten when its height becomes zero.
Now SaDDas asks you n queries. In each query he gives you numbers l, t and m and you should find the largest number r such that l ≤ r and sequence s__l, s__l + 1, ..., s__r can be eaten by performing m-bite no more than t times or print -1 if there is no such number r.
卡腊夫斯(Karafs)是一种呈 1×h 矩形形状的蔬菜。塔瓦斯波利斯(Tavaspolis)的人们非常喜爱卡腊夫斯,并几乎在所有食物中都会用到它。塔瓦斯(Tavas)本人也对卡腊夫斯着迷。

每根卡腊夫斯都有一个正整数高度。塔瓦斯拥有一条无限长、以 1 为起始下标的卡腊夫斯序列,其中第 i 根卡腊夫斯的高度为 si=A+(i−1)×B。
对于给定的 m,定义一次 m-咬操作(m-bite operation)为:至多选择 m 根尚未被吃掉的卡腊夫斯,将它们各自的高度减少 1。当某根卡腊夫斯的高度变为 0 时,即视为已被吃掉。
现在萨达斯(SaDDas)向你提出 n 个询问。在每个询问中,他给出三个数 l、t 和 m,你需要找出最大的整数 r,满足 l≤r,且子序列 sl,sl+1,…,sr 可以通过至多执行 t 次 m-咬操作而全部被吃掉;若不存在这样的 r,则输出 −1。
输入格式
The first line of input contains three integers A, B and n (1 ≤ A, B ≤ 106, 1 ≤ n ≤ 105).
Next n lines contain information about queries. i-th line contains integers l, t, m (1 ≤ l, t, m ≤ 106) for i-th query.
输入的第一行包含三个整数 A、B 和 n(1 ≤ A, B ≤ 106,1 ≤ n ≤ 105)。
接下来的 n 行描述了 n 个查询。第 i 行包含三个整数 l、t、m(1 ≤ l, t, m ≤ 106),对应第 i 个查询。
输出格式
For each query, print its answer in a single line.
对于每个查询,在单独一行中输出其答案。
输入输出样例
输入#1
2 1 4 1 5 3 3 3 10 7 10 2 6 4 8
输出#1
4 -1 8 -1
输入#2
1 5 2 1 5 10 2 7 4
输出#2
1 2
输入解题思路,AI测评打分。不知道怎么写?