Về bài toán chu trình trong hoán vị Lê Phúc Lữ Ngày 14 tháng 2 năm 2020 Chu trình trong một hoán vị (a1 , a2 , a3 , . . . , an ) của các số (1, 2, 3, . . . , n) là một tập con của các số này mà chúng đổi vị trí cho nhau tạo thành một vòng. Ta xét hoán vị sau: 123456789→ 142357698 f Chẳng hạn trong hoán vị trên: f (2) = 4, f (3) = 2, f (4) = 3 nên có thể nói (2, 3, 4) tạo thành một chu trình. Các số không đổi qua phép hoán vị được coi là một chu trình riêng biệt và do đó, trong hoán vị trên có tất cả 5 chu trình: (1), (423), (5), (76), (98). Ta biết một kết quả quen thuộc trong số học là: Ví dụ. Với p là số nguyên tố lẻ và g là căn nguyên thủy của nó thì g, g 2 , . . . , g p−1 (mod p) chính là hoán vị của các số 1, 2, . . . , p − 1 và ngoài ra h = p − 1 là số nguyên dương nhỏ nhất để g h ≡ 1 (mod p). Như thế, ta nói hoán vị trên là hoán vị có 1 chu trình. Rõ ràng mỗi hoán vị bất kỳ đều có thể chia nhỏ thành các chu trình rời nhau. Liên quan đến việc đếm số hoán vị với số chu trình cho trước, ta có kết quả nổi tiếng sau Số Stirling loại I. Số hoán vị của n phần tử mà có đúng k chu trình, đặt là s(n, k). Công thức truy hồi s(n + 1, k) = s(n, k − 1) + n · s(n, k). Chứng minh. Ta sẽ chia số hoán vị của n + 1 mà có k chu trình thành hai loại: • Loại 1 gồm các hoán vị mà phần tử {n + 1} là một chu trình riêng biệt, còn n phần tử còn lại hoán vị tạo thành k − 1 chu trình, có s(n, k − 1) trường hợp. • Loại 2 gồm các hoán vị có phần tử {n + 1} nằm trong các chu trình đã có của n phần tử đầu tiên, do có xét đến thứ tự nên phần tử này có n cách đặt vào dãy hoán vị đã có, như thế có n · s(n, k) cách. 1 Group "Hướng tới VMO-TST" Từ đó ta dễ dàng có công thức đã cho. Kết quả cơ bản. Bạn đọc thử tự chứng minh các kết quả sau với n nguyên dương: s(n, 0) = 0, s(n, 1) = (n − 1)!, s(n, n) = 1, s(n, n − 1) = Cn2 . Tiếp theo là một số bài toán nhỏ liên quan đến chủ đề này: Các bài toán nhỏ. n P 1. Xét đa thức f (x) = x(x + 1)(x + 2) . . . (x + n − 1) = ak xk . Khi đó, chứng minh k=1 rằng ak = s(n, k). 2. Chứng minh đẳng thức X p! 1 = |s (n; p)| , x 1 x 2 . . . xp n! ở đây tổng được lấy trên tất cả các nghiệm nguyên dương của phương trình x1 + x2 + . . . + xp = n. 3. Chứng minh rằng trong tập hợp hoán vị của n > 1 số nguyên dương đầu tiên, số hoán vị có số chẵn chu trình bằng số hoán vị có số lẻ chu trình và dĩ nhiên sẽ bằng n!2 . 4. Tính số hoán vị của n số nguyên dương đầu tiên sao cho 1, 2, 3 nằm trong cùng một chu trình, còn 4 thì khác chu trình. Chứng minh. (1) Số hạng xk trong tích x(x + 1)(x + 2) . . . (x + n − 1)(x + n) chính là s(n, k) · xk · n + s(n, k − 1) · xk−1 · x. Từ đó dễ suy ra công thức truy hồi giống như số Stirling đã nêu ở trên. (2) Số các hoán vị có p chu trình kí hiệu là m1 , m2 , . . . , mp trong đó chu trình mi chứa xi phần tử với xi ≥ 1 là n! n! (x1 − 1)! (x2 − 1)! . . . (xp − 1)! = . x1 !x2 ! . . . xp ! x 1 x 2 . . . xp 2 Group "Hướng tới VMO-TST" Do đó X 1 n! p! x +x +...+x =n x1 x2 . . . xp 1 p 2 xi ≥1,i=1,p chính là số hoán vị của n phần tử và có p chu trình. Từ đây dễ dàng suy ra đẳng thức đã cho. (3) Để chứng minh kết quả này, ta có thể thiết lập một song ánh giữa hai loại hoán vị bằng cách chọn trước một cặp số (a, b) và xét sự đổi chỗ của chúng. Cụ thể là bằng việc tác động lên một cặp số (a, b) cố định nào đó, ta thấy số chu trình sẽ thay đổi tính chẵn lẻ. Ta có sơ đồ sau (4) Giả sử rằng 1, 2, 3 xuất hiện trong chu trình độ dài k ≥ 3 thì số cách chọn k − 3 k−3 phần tử bổ sung thêm trong n − 4 phần tử còn lại (không xét 1, 2, 3, 4) là Cn−4 . Hoán đổi vị trí của chúng (để tạo thành đúng 1 chu trình) ta có (k − 1)! cách, còn lại n − k thì có (n − k)! cách. Suy ra số hoán vị trong trường hợp này là k−3 Cn−4 (n − 4)!(n − k)! = (n − 4)!(n − k)(k − 1)(k − 2). Do đó suy ra số hoán vị thỏa mãn đề bài là (n − 4)! n−1 X k=3 (n − k)(k − 1)(k − 2) = n! . 12 Tiếp theo, ta xét một số bài thử thách hơn trong các kỳ thi Olympic: (Đề chọn đội dự tuyển PTNK 2010) Cho A = {−2011, −2010, . . . , 2010, 2011} gồm các số tự nhiên liên tiếp. Liệu tồn tại hay không một hàm số f : A → A để f (f (n)) = −n, ∀n ∈ A? 3 Group "Hướng tới VMO-TST" Lời giải. Giả sử tồn tại hàm số f thỏa mãn đề bài thì rõ ràng f là một song ánh. Thay n = 0, ta có f (f (0)) = 0. Đặt f (0) = a thì f (a) = 0. Suy ra −a = f (f (a)) = f (0) = a nên a = 0. Ta thay 2011 → m. Để ý rằng nếu như f (a) = b, từ đây suy ra f (b) = −a, f (−a) = −b, f (−b) = a. Đồng thời ta cũng phải có |a| = 6 |b| và a, b 6= 0. Như thế, các số trong \{0} thông qua song ánh f sẽ tạo thành hoán vị và được chia thành các chu trình độ dài 4. Từ đó suy ra 4|2m nên 2|m. Từ đây suy ra m = 2011 không thỏa vì nó là số lẻ. Câu trả lời là phủ định. (VN TST 2003) Cho A là tập hợp tất cả các hoán vị a = (a1 , a2 , . . . , a2003 ) của 2003 số nguyên dương đầu tiên và mỗi hoán vị thỏa mãn điều kiện: không có tập con S nào của A mà {ak |k ∈ S} = S. Với mỗi a = (a1 , a2 , . . . , a2003 ) ∈ S đặt 2003 X d(a) = (ak − k)2 . k=1 Tìm giá trị nhỏ nhất của d(a), gọi giá trị nhỏ nhất đó là d0 . Chứng minh. Điều kiện đề bài nói lên rằng hoán vị đã cho có đúng 1 chu trình, với mỗi hoán vị bất kì thuộc A, ta xét ánh xạ f : i → ai . Theo giả thiết, ta thấy hoán vị này có đúng 1 chu trình nên phải có 1, f (1), f (f (1)) , . . . , f 2002 (1) = {1, 2, 3, . . . , 2003} . Đặt sk = f k−1 (1) − f k (1) , k = 1, 2003 và m < 2003 là số tự nhiên thỏa f m (1) = 2003. Ta có đánh giá 2003 = |f m (1) − 1| ≤ s1 + s2 + . . . + sm + 1 và 2003 = |f m (1) − 1| ≤ sm+1 + sm+2 + . . . + s2003 + 1. Từ đây suy ra 2003 P sk ≥ 2 · 2003 − 2. Như thế k=1 d(a) = 2003 X k=1 2003 P f k−1 k (1) − f (1) 2 ≥ 2 sk k=1 2003 (2 · 2003 − 2)2 ≥ > 4 · 2003 − 8. 2003 4 Group "Hướng tới VMO-TST" Do d(a) là số chẵn nên d(a) ≥ 4 · 2003 − 4 = 8006. Ta có thể chọn a1 = 3, a2 = 1 và a2i−1 = 2i + 1, a2i = 2i − 2 với mọi i = 2, 3, . . . , 1001 và a2 003 = 2002 thì a ∈ B và d(a) = 8006. Vậy giá trị nhỏ nhất cần tìm là 8006. (Đề chọn đội tuyển PTNK 2011) Cho p là số nguyên tố lẻ và n = 2p + r với r ∈ {0, 1, 2, . . . , p − 1}. Đặt X = {1, 2, . . . , n}. Ánh xạ f : X → X được gọi là có tính chất P nếu f không phải là ánh xạ đồng nhất và f (f (. . . (f (k)) . . .)) = k (ánh xạ hợp p lần) với mọi k ∈ X. Đặt Af = {k ∈ X | f (k) = k}. (a) Chứng minh rằng nếu f có tính chất P thì |Af | ≡ r (mod p). (b) Gọi d là số các ánh xạ có tính chất P. Chứng minh rằng d không là ước của n!. (Kí hiệu |A| chỉ số lượng các phần tử của tập hợp A.) Lời giải. (a) Ta có |Af | ≡ r (mod p) ⇔ |X \ Af | chia hết cho p. Điều này tương đương số phần tử của tập hợp B = {k ∈ X|f (k) 6= k} là bội của p. Đặt fm (x) là ánh xạ hợp m lần. Xét x ∈ B thì cũng có các số f (x), f2 (x), . . . , fp−1 (x) ∈ B. Thật vậy, Gỉa sử tồn tại 1 < m < p sao cho fm (x) = x với số x ∈ B nào đó, ta chọn m là số nhỏ nhất như thế. Vì p nguyên tố lẻ nên p không chia hết cho m. Do vậy tồn tại số t sao cho 0 < p − tm < m. Lại có fm (x) = x ⇒ ftm (x) = x ⇒ fp−tm (x) = fp (x) = x (mâu thuẫn với tính nhỏ nhất của m). Vì thế nên với mọi m mà 1 < m < p thì fm (x) 6= x. Từ đó suy ra với mọi 1 < k < l < p thì fk (x) 6= fl (x), tức là x, f (x), f2 (x), . . . , fp−1 (x) là p số khác nhau thuộc B. Xét số y ∈ B và y khác tất cả p số ở trên. Khi đó, ta cũng sẽ có y sinh ra một bộ p số phân biệt mới. Giả sử rằng có fi (x) = fj (y) với i < j nào đó thì sẽ có fp+i−j (x) = fp (y) = y, mâu thuẫn. Suy ra trong B sẽ có 1 hoặc 2 bộ p số rời nhau, chứng tỏ rằng số phần tử của B chia hết cho p. Suy ra đpcm. (b) Từ đây ta thấy rằng để đếm số ánh xạ f có tính chất P, trước hết, ta chọn ra r hoặc p + r vị trí cố định. Ta xét hai trường hợp như sau: 5 Group "Hướng tới VMO-TST" 1. Nếu |Af | = p + r thì có Cnp+r cách chọn ra các số này, còn lại p số thì f phải là song ánh trên tập con đó. Do đó trong trường hợp này có p!Cnp+r cách. p . 2. Nếu |Af | = r thì tương tự trên, ta cũng đếm được (p!)2 Cnr C2p Từ đó suy ra số ánh xạ tính chất P là p . d = p!Cnp+r + (p!)2 Cnr C2p Ta sẽ chứng minh số này không là ước của n!. Ta viết số d dưới dạng khai triển d = p! n! n! (2p)! n! n! + (p!)2 · + . 2 = (p + r)!p! r!(2p)! (p!) (p + r)! r! · (p+r)! = p! C r ∈ Z. Khi đó, ta viết lại Đặt (p + r)! = k · (r!)2 với k = (p+r)! = p! r! p!r! r! p+r (r!)2 n! r!(p + r)! k · (r!)3 k · (r!)2 = = = . d r! + (p + r)! (1 + k · r!) · r! k · r! + 1 Dễ thấy số này không thể nguyên vì k · r! + 1 nguyên tố cùng nhau với k · (r!)2 . Từ đó ta có d không là ước của n!. Tiếp theo, ta xét một bài rất thú vị của bạn Nguyễn Cảnh Hoàng đăng thảo luận trên Facebook như sau. (Bài toán hay - Lời giải đẹp) Cho một dãy các số nguyên có n phần tử a = (a1 , a2 , . . . , an ). Xét hoán vị b = (b1 , b2 , . . . , bn ) của dãy trên. Xét m là số vị trí i sao cho bi > ai . Gọi ci là số lần xuất hiện của số ai trong dãy trên. Xét hoán vị (b) sao cho m lớn nhất, chứng minh rằng khi đó m = n − max ci . Lời giải. Đặt k = max ci , ta cần chứng minh m = n − k. Không mất tính tổng quát, ta giả sử dãy (a) là tăng dần, vì giả sử ta có hoán vị (b) tương ứng với (a) để đạt cực đại thì với dãy (a0 ) nào đó không tăng dần, ta sẽ so sánh sự thay đổi vị trí của (a0 ) so với (a) để thu được hoán vị (b0 ) của (b) thích hợp; tức là ánh xạ lại sự thay đổi vị trí của (a0 ) so với (a) vào trong (b). Trong dãy (a) tăng dần, số ở vị trí [k + 1] chắc chắn lớn hơn số ở vị trí [1], tương tự thì số ở vị trí [k + i] sẽ lớn hơn số ở vị trí [i] với i ≤ n − k (do có tối đa k số bằng nhau). Khi đó, chuyển k số đầu tiên của dãy đặt vào cuối thì n − k số cuối của dãy từ vị trí [k + 1] đến [n] sẽ được đưa lên trước và tại cùng vị trí, nó sẽ lớn hơn giá trị trước đó. Suy ra tồn tại hoán vị thỏa mãn max = n − k. 6 Group "Hướng tới VMO-TST" Giả sử x là số xuất hiện k lần trong dãy. Gọi vị trí mà tại đó, số mới không vượt quá số cũ, là vị trí xấu. Xét một song ánh f bất kỳ trên {1, 2, 3, . . . , n} tương ứng với một hoán vị nào đó của (a). Ta chia hoán vị thành các chu trình. Xét một chu trình cụ thể và giả sử trong đó có y số bằng x. • Nếu y = 1 thì chu trình độ dài 1, nghĩa là x không đổi vị trí cho nên f (x) = x, vị trí này xấu. • Nếu y = 2, ta có 2 số x trong chu trình, đặt là x1 , x2 . Do đây là chu trình nên ta có thể viết x1 → f (x1 ) → f (f (x1 )) . . . → x2 → f (x2 ) → f (f (x2 )) → . . . x1 . Khi đó, trong 2 đoạn trên chia ra bởi x, ta phải có ít nhất 2 vị trí xấu. Thật vậy, giả sử đoạn từ x1 → x2 không có vị trí xấu thì có thể coi f như hàm đồng biến, ta có x2 > f (. . . f (x1 ) . . .) > . . . f (f (x1 )) > f (x1 ) > x1 , vô lý do x1 = x2 = x. Tương tự với đoạn còn lại chuyển từ x2 về x1 . • Lập luận tương tự với giá trị y lớn hơn. Như thế, x xuất hiện k lần thì tương ứng có ít nhất k vị trí xấu trong bất kỳ hoán vị nào của dãy. Số vị trí "không xấu" tối đa là n − k. Ta có đpcm. Cuối cùng, để kết thúc bài viết này, ta xét một bài toán thú vị liên quan đến khái niệm "transition" (xuất hiện ở bài toán chứng minh số hoán vị có chẵn chu trình bằng số hoán vị có lẻ chu trình). Đây là một công cụ hỗ trợ đắc lực cho các bài toán liên quan đến chu trình trong hoán vị. Đương nhiên các nội dung liên quan trong chủ đề này còn rất phong phú, nhưng bài viết nhỏ này không đủ khả năng đề cập được hết. (Chọn đội tuyển Arab 2019) Có n > 1 người đến một bữa tiệc và mỗi người đều đội nón, tất cả các nón đều phân biệt. Hai người bất kỳ sẽ lên sân khấu hát song ca đúng một lần và họ sẽ đổi nón cho nhau. Tìm tất cả các số n sao cho có thể sắp thứ tự các cặp song ca một cách thích hợp để sau khi chương trình tiệc kết thúc, mỗi người sẽ đội đúng cái nón của mình lúc đầu. Lời giải. Ta có thể xem việc đổi nón của hai người giống như việc hoán đổi vị trí của họ trên một hàng ngang, ở đây có thể đơn giản coi như là các số 1, 2, . . . , n. Đầu tiên ta có vị trí như thế. Sau Cn2 bước đổi vị trí thì thu được đúng trạng thái ban đầu. 7 Group "Hướng tới VMO-TST" Ta định nghĩa "nghịch thế" là số các cặp (a, b) trong hoán vị mà a > b trong khi a nằm bên trái của b. Chẳng hạn: số nghịch thế của dãy (1, 4, 2, 3) là 2, cụ thể là hai cặp (4, 2), (4, 3). Trước hết, không khó để chứng minh bổ đề sau (chỉ cần xét hoán vị có chứa và không chứa cặp số được chọn). Số nghịch thế. Chứng minh rằng khi đổi chỗ hai phần tử của một dãy số nguyên dương gồm các số phân biệt thì số nghịch thế thay đổi lẻ đơn vị. Theo bổ đề thì khi thực hiện nhiều bước đổi chỗ, số nghịch thế vẫn là 0, tức là Cn2 chẵn, kéo theo n ≡ 0, 1 (mod 4). Ta sẽ chỉ ra mọi số n > 1 như thế đều thỏa mãn đề bài. Với n = 4, ta thực hiện như sau (1 ↔ 2), (3 ↔ 4), (1 ↔ 4), (2 ↔ 3), (1 ↔ 3), (3 ↔ 4). Với n = 5, ta thực hiện như sau (5 ↔ 1), (3 ↔ 2), (5 ↔ 3), (4 ↔ 1), (5 ↔ 4), (1 ↔ 3), (2 ↔ 1), (2 ↔ 3), (3 ↔ 4), (4 ↔ 2). Giả sử ta đã thực hiện được với k ≡ 0, 1 (mod 4), xét k + 4 số. Đầu tiên, ta đổi k + x trong đó x ∈ {1, 2, 3} cho k số đầu tiên thì (k + x ↔ 1), (k + x ↔ 2), . . . , (k + x ↔ k). Khi đó (k + 4 ↔ k + 1), (k + 4 ↔ k), . . . , (k + 4 ↔ 1). Cuối cùng, ta được (k + 1 ↔ k + 3), (k + 2 ↔ k + 4), (k + 4 ↔ k + 3), (k + 2 ↔ k + 3), (k + 2 ↔ k + 1). Dễ dàng kiểm tra được cách xây dựng này thỏa mãn nên tất cả các số n > 1 cần tìm là n chia 4 dư 0, 1. Tài liệu tham khảo. 1. Adam Sheffer, More Permutations. 2. Lê Phúc Lữ, Phân hoạch nguyên và phân hoạch tập hợp, 2013. 3. Nguyễn Tăng Vũ, Lê Phúc Lữ, Nguyễn Tiến Hoàng, Trần Bá Đạt, Đào Sơn Trà, 12 năm đề thi chọn đội tuyển - dự tuyển PTNK. 4. https://en.wikipedia.org/wiki/Stirling_numbers_of_the_first_kind 5. Trần Ngọc Thắng, Ánh xạ trong hoán vị. 6. Nguyễn Cảnh Hoàng, Group "Bài toán hay - Lời giải đẹp" https://www.facebook.com/groups/Loicenter/permalink/2085651401508023/ 8