CF2002F2.Court Blue (Hard Version)
省选/NOI-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
这是该问题的困难版本。在本版本中,不保证 n=m,且时间限制更高。只有在两个版本的问题都被解决后,你才能进行 hack。
在蓝王的宫廷中,Lelle 和 Flamm 正在进行一场表演赛。比赛包含若干轮。在每一轮中,Lelle 或 Flamm 会赢得胜利。
设 WL 和 WF 分别表示 Lelle 和 Flamm 的获胜次数。蓝王认为一场比赛是成功的,当且仅当:
- 每一轮结束后,gcd(WL,WF)≤1;
- 比赛结束时,WL≤n,WF≤m。
注意,对于任意非负整数 x,有 gcd(0,x)=gcd(x,0)=x。
Lelle 和 Flamm 可以随时决定停止比赛,表演的最终得分为 l⋅WL+f⋅WF。
请帮助 Lelle 和 Flamm 协调他们的胜负,使得表演是成功的,并且总得分最大。
输入格式
第一行包含一个整数 t(1≤t≤103)——表示测试用例的数量。
每个测试用例包含一行,包含四个整数 n、m、l、f(2≤n≤m≤2⋅107,1≤l,f≤109):n 和 m 分别给出 Lelle 和 Flamm 获胜次数的上限,l 和 f 决定了表演的最终得分。
特殊额外限制:保证每个测试用例中,n 和 m 的组合都是唯一的。
输出格式
对于每个测试用例,输出一个整数——成功表演的最大总得分。
输入输出样例
输入#1
8 3 4 2 5 4 4 1 4 6 6 2 2 7 9 2 3 8 9 9 1 2 7 1 4 5 9 1 4 5 6 6 7
输出#1
22 17 18 37 77 30 41 59
输入#2
2 3082823 20000000 1341 331 20000000 20000000 3 5
输出#2
10754065643 159999991
输入#3
1 139 1293 193 412
输出#3
559543
说明/提示
在第一个测试用例中,一种可能的表演如下:
- Flamm 获胜,gcd(0,1)=1。
- Lelle 获胜,gcd(1,1)=1。
- Flamm 获胜,gcd(1,2)=1。
- Flamm 获胜,gcd(1,3)=1。
- Flamm 获胜,gcd(1,4)=1。
- Lelle 和 Flamm 同意停止比赛。
最终得分为 1⋅2+4⋅5=22。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?