CF1182F Maximum Sine
题目描述
给定整数 $a$、$b$、$p$ 和 $q$。定义 $f(x) = \text{abs}(\sin(\frac{p}{q} \pi x))$。
请在 $a \le x \le b$ 的范围内,找到使 $f(x)$ 最大的最小整数 $x$。
输入格式
每个测试点包含多组测试数据。
第一行输入一个整数 $t$($1 \le t \le 100$),表示测试数据的组数。
每组测试数据的第一行包含四个整数 $a$、$b$、$p$ 和 $q$($0 \le a \le b \le 10^{9}$,$1 \le p, q \le 10^{9}$)。
输出格式
对于每组测试数据,输出一个整数 $x$,表示在给定区间内使 $f(x)$ 最大的最小整数。每个答案占一行。
说明/提示
在第一个测试点中,$f(0) = 0$,$f(1) = f(2) \approx 0.866$,$f(3) = 0$。
在第二个测试点中,$f(55) \approx 0.999969$,这是所有可能值中的最大值。
由 ChatGPT 4.1 翻译