
findTheModuleArray
Cho một mảng a
gồm n
phần tử khác nhau, 1<=a[i]<=n
. đặc biệt là:
a[0] mod n = x0
a[0]xa[1] mod n = x1
a[0]xa[1]xa[2] mod n = x2
- …
a[0]xa[1]xa[2]x...a[n-2] mod n = xn-2
a[0]xa[1]xa[2]x...a[n-1] mod n = xn-1
- Mảng
b={x0, x1, x2, ...,xn-1}
gồmn
phần tử khác nhau ,0<=b[i]<=n-1
.
Bạn được cho số nguyên n
, hãy tìm mảng a
này. Nếu có nhiều mảng a thỏa mãn thì in ra mảng a
có mảng b
xuất hiện trước theo thứ tự từ điển. Còn nếu không có mảng a nào thỏa mãn thì in ra mảng rỗng a={}
.
Ví dụ:
- Với
n=4
thìa={1,3,2,4}
. Có duy nhất mảng này thỏa mãn.1 mod 4=1
1x3 mod 4=3
1x3x2 mod 4=2
1x3x2x4 mod 4=0
b={1,3,2,0}
- Với
n=5
thìa={1,2,4,3,5}
. Có 2 mảng a thỏa mãn là{1,2,4,3,5}
,{1,3,4,2,5}
nhưng ta chọn mảng a mà có mảng b xuất hiện trước theo thứ tự từ điển.
Mảnga={1,2,4,3,5}
thì:1 mod 5=1
1x2 mod 5=2
1x2x4 mod 5=3
1x2x4x3 mod 5=4
1x2x4x3x5 mod 5=0
b={1,2,3,4,0}
.
Mảnga={1,3,4,2,5}
thì:1 mod 5=1
1x3 mod 5=3
1x3x4 mod 5=2
1x3x4x2 mod 5=4
1x3x4x2x5 mod 5=0
b={1,3,2,4,0}.
Đầu vào/Đầu ra:
-
[Giới hạn thời gian chạy] 0.5 giây với C++, 3 giây với Java và C#, 4 giây vs Python, GO và Js
-
[Đầu vào] integer n
1 <= n <= 105
-
[Đầu ra] arr.integer
Tìm mảnga
.
Post Comment