题目描述
素数 P および正の整数 a, b が与えられます。 P 項からなる整数列 A = (A1, A2, …, AP) であって、次の条件をすべて満たすものが存在するかを判定してください。 存在する場合には、そのようなものをひとつ出力してください。
- 1≤ Ai≤ P − 1
- A1 = AP = 1
- (A1, A2, …, AP−1) は、(1, 2, …, P−1) を並べ替えたものである
- 任意の 2≤ i≤ P に対して、次のうち少なくともひとつが成り立つ:
- Ai ≡ aAi−1(modP)
- Ai−1 ≡ aAi(modP)
- Ai ≡ bAi−1(modP)
- Ai−1 ≡ bAi(modP)
输入格式
入力は以下の形式で標準入力から与えられます。
P a b
输出格式
問題の条件を満たす整数列 A が存在するならば Yes
を、そうでなければ No
を出力してください。 Yes
の場合には、2 行目にそのような整数列 A の各要素を、空白で区切って 1 行で出力してください。
A1 A2 … AP
条件を満たす整数列が複数存在する場合は、どれを出力しても正解となります。
题目大意
给定质数 P 和两个正整数 a,b,要求构造一个长度为 P 的序列满足:
- 1≤Ai≤P−1;
- A1=AP=1;
- (A1,A2,…,AP−1) 是一个 1∼P−1 的排列;
- ∀2≤i≤P,满足下列四个条件中的至少一个:
- Ai≡aAi−1(modP);
- Ai−1≡aAi(modP);
- Ai≡bAi−1(modP);
- Ai−1≡bAi(modP)。
Data Range:2≤P≤105,1≤a,b≤P−1,P 为质数。
Translated by pitham(脾土蛤蟆)。
13 4 5
Yes
1 5 11 3 12 9 7 4 6 8 2 10 1
13 1 2
Yes
1 2 4 8 3 6 12 11 9 5 10 7 1
13 9 3
No
13 1 1
No
提示
制約
- 2≤ P≤ 105
- P は素数
- 1≤ a, b ≤ P − 1
Sample Explanation 1
P = 13 を法として、 - A2≡ 5A1 - A2≡ 4A3 - ⋮ - A13≡ 4A12 が成り立ち、この整数列は条件を満たすことが確認できます。