AT_utpc2020_k.Special Chopsticks
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
のいみ酱和のいむ君想送给妈妈一双特别的筷子,于是和制作筷子的高桥老师一起动手制作。筷子由两根长度相等的木片组成。
现在,他们手头上有 N 根蓝色木片和 N 根黄色木片,分别标号为 1 到 N。第 i 根蓝色木片的长度是 Ai,第 i 根黄色木片的长度是 Bi。每根蓝色木片和黄色木片的长度互不相同。
のいみ酱和のいむ君计划制作 K 双筷子。于是,高桥老师为他们准备了 K 种不同长度的红色木片,每种长度各两根。第 i 种红色木片的长度是 Ci,而这些长度都互不相同。
两人和高桥老师将通过以下步骤重复进行 K 次,以制作 K 双筷子。第 i 次的具体操作如下:
- のいみ酱从现有的红色木片中选择长度为 CLi 和 CRi 的木片,并将这两根木片连接起来,长度为 CLi+CRi 的新木片交给高桥老师。
- のいむ君选择第 Si 根蓝色木片和第 Ti 根黄色木片,将它们连接形成长度为 ASi+BTi 的木片并交给高桥老师。
- 如果这两根木片的长度差是 M 的倍数,那么高桥老师可以通过添加足够长度的木片来使其长度相等,从而完成一双筷子的制作。否则,这次制作将失败。
现在,のいみ酱已经为每个步骤的 Li 和 Ri 做出了选择。你的任务是判断,高桥老师和のいむ君能否恰当地选择出 Ci,Si,Ti,以顺利制作出 K 双筷子。如果可以,请输出一种可能的选择方案。
输入格式
输入由标准输入提供,包括如下内容:
N M K A1 A2 … AN B1 B2 … BN L1 R1 ⋮ LK RK
输出格式
如果无法完成要求,输出 -1。若能完成任务,则输出 K+1 行,格式如下:
C1 C2 … CK S1 T1 ⋮ SK TK
其中,Si,Ti 分别表示第 i 步中のいむ君选择的蓝色木片和黄色木片的编号。输出需要满足以下条件:
- 1≤Ci≤M,且 Ci 互不相同。
- 1≤Si,Ti≤N,且各 Si 互不相同,各 Ti 互不相同。
- ASi+BTi≡CLi+CRi(modM)
在满足条件的情况下,如果有多种选择方案,输出任意一种均可。
输入输出样例
输入#1
3 5 3 1 3 4 1 2 4 1 1 2 3 3 2
输出#1
2 3 5 2 1 3 3 1 2
说明/提示
- 输入的所有数据都是整数。
- N=2×105
- M=106+3(为素数)
- K=4×104
- 1≤Ai,Bi≤M,且每个 Ai 和 Bi 各不相同。
- 1≤Li,Ri≤K
- 每个 x(1≤x≤K) 在 Li,Ri 中恰好出现两次。
本翻译由 AI 自动生成
输入解题思路,AI测评打分。不知道怎么写?