CF1437A Marketing Scheme

题目描述

你在一家宠物店担任市场营销员,你当前的任务是提升猫粮的销量。其中一种策略是将猫粮罐头打包销售,并给予折扣。 假设你决定将 $a$ 个罐头组成一包进行打折销售,而某位顾客想要购买 $x$ 个猫粮罐头。那么他会采取一种贪心策略: - 他会先购买 $\left\lfloor \frac{x}{a} \right\rfloor$ 包打折的猫粮; - 然后他会单独购买剩下的 $(x \bmod a)$ 个罐头。 $\left\lfloor \frac{x}{a} \right\rfloor$ 表示 $x$ 除以 $a$ 向下取整,$x \bmod a$ 表示 $x$ 除以 $a$ 的余数。 但顾客通常很贪心,如果顾客想要单独购买 $(x \bmod a)$ 个罐头,并且恰好有 $(x \bmod a) \ge \frac{a}{2}$,他会决定直接再买一整包 $a$ 个罐头(而不是只买 $(x \bmod a)$ 个)。这会让你这个市场营销员很高兴,因为顾客买的比他最初想要的还多。 你知道每一个来到你店里的顾客,可能会购买 $l$ 到 $r$ 个罐头(包含 $l$ 和 $r$)。你能否选择一个合适的包大小 $a$,使得每个顾客都比他们最初想要的买得更多?

输入格式

第一行包含一个整数 $t$($1 \le t \le 1000$),表示测试用例的数量。 每个测试用例的第一行包含两个整数 $l$ 和 $r$($1 \le l \le r \le 10^9$),表示顾客可能购买的罐头数量区间。

输出格式

对于每个测试用例,如果你能选择一个合适的包大小 $a$,使得每个顾客都比他们最初想要的买得更多,输出 YES。否则输出 NO。 你可以用任意大小写输出每个字符。

说明/提示

在第一个测试用例中,你可以选择 $a = 5$ 作为包的大小。那么如果顾客想买 $3$ 个罐头,他会买 $5$ 个($3 \bmod 5 = 3$,$\frac{5}{2} = 2.5$)。想买 $4$ 个罐头的顾客也会买 $5$ 个。 在第二个测试用例中,没有办法选择合适的 $a$。 在第三个测试用例中,你可以选择 $a = 80$。 由 ChatGPT 4.1 翻译