1. Trang chủ
  2. » Giáo án - Bài giảng

bai toan dem

15 519 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

A. LỜI MỞ ĐẦU Tổ hợp là một lĩnh vực quan trọng của toán học rời rạc đề cập tới nhiều vấn đề khác nhau của toán học. Lý thuyết Tổ hợp nghiên cứu việc phân bố các phần tử vào các tập hợp. Thông thường các phần tử của tập hợp là hữu hạn và việc phân bố chúng phải thoả mãn những điều kiện nhất định nào đó tuỳ theo yêu cầu của bài toán nghiên cứu. Mỗi cách phân bố được coi là một“cấu hình của tổ hợp”. Nguyên lý chung để giải quyết bài toán tổ hợp được dựa trên những nguyên lý cơ sở đó là nguyên lý cộng, nguyên lý nhân và một số nguyên lý khác. Nội dung chính của bài tiểu luận Phần I Bài toán đếm 1. Giới thiệu bài toán 2. Các ví dụ 3. Bài tập Phần II. Bài toán liệt kê 1. Giói thiệu bài toán 2. Các ví dụ 3. Bài tập Phần III. Bài toán tồn tại 1. Giói thiệu bài toán 2. Các ví dụ 3. Bài tập Phần IV. Bài toán tối ưu 1. Giới thiệu bài toán 2. Các ví dụ 3. Bài tập 1 B. PHÂN LOẠI CÁC BÀI TOÁN TỔ HỢP Phần I. BÀI TOÁN ĐẾM 1) Giới thiệu bài toán Đây là dạng bài toán nhằm trả lời câu hỏi “có bao nhiêu cấu hình thoả mãn điều kiện nêu”. Bài toán đếm được áp dụng có hiệu quả vào những công việc mang tính chất đánh giá như xác suất của một sự kiện, độ phức tạp thuật toán. 2) Cơ sở của phép đếm và các ví dụ 1) Quy tắc cộng: Giả sử có k công việc T 1 , T 2 , , T k . Các việc này có thể làm tương ứng bằng n 1 , n 2 , , n k cách và giả sử không có hai việc nào có thể làm đồng thời. Khi đó số cách làm một trong k việc đó là n 1 +n 2 + + n k . Ví dụ 1: Một sinh viên có thể chọn bài thực hành máy tính từ một trong ba danh sách tương ứng có 23, 15 và 19 bài. Vì vậy, theo quy tắc cộng có 23 + 15 + 19 = 57 cách chọn bài thực hành. Ví dụ 2: Giá trị của biến m bằng bao nhiêu sau khi đoạn chương trình sau được thực hiện? m := 0 for i 1 := 1 to n 1 m := m+1 for i 2 :=1 to n 2 m := m+1 for i k := 1 to n k m := m+1 Giá trị khởi tạo của m bằng 0. Khối lệnh này gồm k vòng lặp khác nhau. Sau mỗi bước lặp của từng vòng lặp giá trị của k được tăng lên một đơn vị. Gọi T i là việc thi hành vòng lặp thứ i. Có thể làm T i bằng n i cách vì vòng lặp thứ i có n i bước lặp. Do các vòng lặp không thể thực hiện đồng thời nên theo quy tắc cộng, giá trị cuối cùng của m bằng số cách thực hiện một trong số các nhiệm vụ T i , tức là m = n 1 +n 2 + + n k . 2 Quy tắc cộng có thể phát biểu dưới dạng của ngôn ngữ tập hợp như sau: Nếu A 1 , A 2 , , A k là các tập hợp đôi một rời nhau, khi đó số phần tử của hợp các tập hợp này bằng tổng số các phần tử của các tập thành phần. Giả sử T i là việc chọn một phần tử từ tập A i với i=1,2, , k. Có |A i | cách làm T i và không có hai việc nào có thể được làm cùng một lúc. Số cách chọn một phần tử của hợp các tập hợp này, một mặt bằng số phần tử của nó, mặt khác theo quy tắc cộng nó bằng |A 1 |+|A 2 |+ +|A k |. Do đó ta có: |A 1 ∪ A 2 ∪ ∪ A k | = |A 1 | + |A 2 | + + |A k |. 2) Quy tắc nhân: Giả sử một nhiệm vụ nào đó được tách ra thành k việc T 1 , T 2 , , T k . Nếu việc T i có thể làm bằng n i cách sau khi các việc T 1 , T 2 , T i-1 đã được làm, khi đó có n 1 .n 2 n k cách thi hành nhiệm vụ đã cho. Ví dụ 1) Người ta có thể ghi nhãn cho những chiếc ghế trong một giảng đường bằng một chữ cái và một số nguyên dương không vượt quá 100. Bằng cách như vậy, nhiều nhất có bao nhiêu chiếc ghế có thể được ghi nhãn khác nhau? Thủ tục ghi nhãn cho một chiếc ghế gồm hai việc, gán một trong 26 chữ cái và sau đó gán một trong 100 số nguyên dương. Quy tắc nhân chỉ ra rằng có 26.100=2600 cách khác nhau để gán nhãn cho một chiếc ghế. Như vậy nhiều nhất ta có thể gán nhãn cho 2600 chiếc ghế. Ví dụ 2) Có bao nhiêu xâu nhị phân có độ dài n. Mỗi một trong n bit của xâu nhị phân có thể chọn bằng hai cách vì mỗi bit hoặc bằng 0 hoặc bằng 1. Bởi vậy theo quy tắc nhân có tổng cộng 2 n xâu nhị phân khác nhau có độ dài bằng n. Ví dụ 3) Có thể tạo được bao nhiêu ánh xạ từ tập A có m phần tử vào tập B có n phần tử? Theo định nghĩa, một ánh xạ xác định trên A có giá trị trên B là một phép tương ứng mỗi phần tử của A với một phần tử nào đó của B. Rõ ràng sau khi đã chọn được ảnh của i - 1 phần tử đầu, để chọn ảnh của phần tử thứ i của A ta có n cách. Vì vậy theo quy tắc nhân, ta có n.n n=n m ánh xạ xác định trên A nhận giá trị trên B. 3 Ví dụ 4) Có bao nhiêu đơn ánh xác định trên tập A có m phần tử và nhận giá trị trên tập B có n phần tử? Nếu m > n thì với mọi ánh xạ, ít nhất có hai phần tử của A có cùng một ảnh, điều đó có nghĩa là không có đơn ánh từ A đến B. Bây giờ giả sử m ≤ n và gọi các phần tử của A là a 1 ,a 2 , ,a m . Rõ ràng có n cách chọn ảnh cho phần tử a 1 . Vì ánh xạ là đơn ánh nên ảnh của phần tử a 2 phải khác ảnh của a 1 nên chỉ có n - 1 cách chọn ảnh cho phần tử a 2 . Nói chung, để chọn ảnh của a k ta có n - k + 1 cách. Theo quy tắc nhân, ta có n(n − 1)(n − 2) (n − m + 1) = n n m ! ( )!− đơn ánh từ tập A đến tập B. Ví dụ 5) Giá trị của biến k bằng bao nhiêu sau khi chương trình sau được thực hiện? m := 0 for i 1 := 1 to n 1 for i 2 := 1 to n 2 for i k := 1 to n k k := k+1 Giá trị khởi tạo của k bằng 0. Ta có k vòng lặp được lồng nhau. Gọi T i là việc thi hành vòng lặp thứ i. Khi đó số lần đi qua vòng lặp bằng số cách làm các việc T 1 , T 2 , , T k . Số cách thực hiện việc T j là n j (j=1, 2, , k), vì vòng lặp thứ j được duyệt với mỗi giá trị nguyên i j nằm giữa 1 và n j . Theo quy tắc nhân vòng lặp lồng nhau này được duyệt qua n 1 .n 2 n k lần. Vì vậy giá trị cuối cùng của k là n 1 .n 2 n k . Nguyên lý nhân thường được phát biểu bằng ngôn ngữ tập hợp như sau. Nếu A 1 , A 2 , , A k là các tập hữu hạn, khi đó số phần tử của tích Descartes của các tập này bằng tích của số các phần tử của mọi tập thành phần. Ta biết rằng việc chọn một phần tử của tích Descartes A 1 x A 2 x x A k được tiến hành bằng cách chọn lần lượt một phần tử của A 1 , một phần tử của A 2 , , một phần tử của A k . Theo quy tắc nhân ta có: |A 1 x A 2 x x A k | = |A 1 |.|A 2 | |A k |. 4 3) Bµi tËp 1. Từ các số 1,2,3,4,5,6 có thể lập được bao nhiêu số tự nhiên, mỗi số có 6 chữ số và thõa mãn điều kiện: Sáu chữ số của mỗi số là khác nhau và tổng của 3 chữ số đầu kém tổng của 3 chữ số sau là 1 đơn vị? 2. Một cuộc họp gồm 12 người tham dự để bàn về 3 vấn đề. Có 8 người phát biểu về vấn đề I, 5 người phát biểu về vấn đề II và 7 người phát biểu về vấn đề III. Ngoài ra, có đúng 1 người không phát biểu vấn đề nào. Hỏi nhiều lắm là có bao nhiêu người phát biểu cả 3 vấn đề. 3. Chỉ ra rằng có ít nhất 4 người trong số 25 triệu người có cùng tên họ viết tắt bằng 3 chữ cái sinh cùng ngày trong năm (không nhất thiết trong cùng một năm). 4. Một tay đô vật tham gia thi đấu giành chức vô địch trong 75 giờ. Mỗi giờ anh ta có ít nhất một trận đấu, nhưng toàn bộ anh ta có không quá 125 trận. Chứng tỏ rằng có những giờ liên tiếp anh ta đã đấu đúng 24 trận. 5. Cho n là số nguyên dương bất kỳ. Chứng minh rằng luôn lấy ra được từ n số đã cho một số số hạng thích hợp sao cho tổng của chúng chia hết cho n. 6. Trong một cuộc lấy ý kiến về 7 vấn đề, người được hỏi ghi vào một phiếu trả lời sẵn bằng cách để nguyên hoặc phủ định các câu trả lời tương ứng với 7 vấn đề đã nêu. Chứng minh rằng với 1153 người được hỏi luôn tìm được 10 người trả lời giống hệt nhau. 7. Có 17 nhà bác học viết thư cho nhau trao đổi 3 vấn đề. Chứng minh rằng luôn tìm được 3 người cùng trao đổi một vấn đề. 8. Trong kỳ thi kết thúc học phần toán học rời rạc có 10 câu hỏi. Có bao nhiêu cách gán điểm cho các câu hỏi nếu tổng số điểm bằng 100 và mỗi câu ít nhất được 5 điểm. 9. Phương trình x 1 + x 2 + x 3 + x 4 + x 5 = 21 có bao nhiêu nghiệm nguyên không âm? 5 10. Một nhóm học sinh gồm 7 nam và 6 nữ. Thầy giáo cần chọn ra 5 em tham dự lễ mít tin với yêu cầu có cả nam và nữ. Hỏi có bao nhiêu cách chọn. Đáp số: 207900 cách. 11. Từ các chữ số 0, 1, 2, 3, 4, 5 có thể lập đợc bao nhiêu số tự nhiên mà mỗi số có 6 chữ số khác nhau và chữ số 2 đứng cạnh chữ số 3. Đáp số: 192 số. Phn II. BI TON LIT Kấ 1) Giới thiệu bài toán: Bài toán đa ra danh sách tất cả các cấu hình tổ hợp có thể có đợc gọi là bài toán liệt kêttổ hợp. Khác với bài toán đếm là tím kiếm một công thức cho bài giải, bài toán liệt kê lại cần xác định một thuật toán để theo đó có thể xây dựng đợc lần lợt các cấu hình cần quan tâm. Một thuật toán liệt kê phải đảm bảo hai nguyên tắc + Không lặp lại cấu hình + Không đợc bỏ sót một cấu hình 2) Các ví dụ: Ví dụ 1: Cho tập hợp các số a 1 , a 2 , a 3 , ,a n và số M. hãy tìm tất cả các tập con k phần tử của dãy số {a n } sao cho tổng số các phần tử trong tập con đó đúng bằng M. Giải: Nh chúng ta đã biết, số các tập con K phần tử của tập gồm n phần tử là C(n,k). Nh vậy chúng ta cần phảI duyệt trong số C(n,k) tập k phần tử từ tập n phần tử có tổng các phần tử đúng bằng M. Vì không thể xác định đợc có bao nhiêu tập k phần tử tập n phần tử có tổng các phần tử đúng bằng M nên chúng ta có trhể liệt kê các cấu hình thoả mãn điều kiện đã cho. Ví dụ 2: Một thơng nhân đi bán hàng tại 8 thành phố. Chị ta có thể bắt đầu hành trình của mình tại 1 thành phố nào đó nhng phải qua 7 thành phố kia theo bất kỳ thứ tự nào mà chị ta muốn. Hãy chỉ ra lộ trình ngắn nhất mà chị ta có thể đi. 6 Giải: Vì thành phố xuất phát đã đợc xác định. Do vậy th- ơng nhân có thể chọn tùy ý 7 thành phố còn lại để hành trình. Nh vậy tất cả số hành trình của thơng nhân có thể đi qua là 7!= 5040cách. Tuy nhiên trog 5040 cách đó chúng ta phải duyệt để chỉ ra 1 hành trình là ngắn nhất. Dạng 1: Lit kê các hoán v ca tp n phn t Vic lit kờ ton b cỏc hoỏn v ca tp X = [x 1 ,x 2 , ,x m ] c quy v vic lit kờ tt c n! hoỏn v ca tp ch s [1,2, ,n]. Ta s lit kờ cỏc hoỏn v ca n s t nhiờn [1,2, ,n] theo th t t in. Nhn xột rng, khi xp theo th t t in, hoỏn v ng trc tiờn s l hoỏn v ( 1,2,3, ,n - 1,n ), hoỏn v ng cui cựng s l hoỏn v ( n,n - 1, ,2,1 ). Vớ d vi n=5, hoỏn v ng u l (1,2,3,4,5), ng cui l (5,4,3,2,1). Trong hoỏn v u tiờn mi s u nh hn s ng ngay sau nú, trong hoỏn v cui cựng thỡ ngc li. Vy k tip sau hoỏn v u tiờn l hoỏn v no? Dạng 2: Hoán v k tip ca mt hoán v ( theo th t t iển ) Gi s có hoán v: x = (x 1 ,x 2 , ,x n 1 ,x n ) của n s 1,2, ,n. Thuật toán sinh hoán v kế tiếp 1. Tìm từ bên phải sang chỉ số i sao cho x i -1 < x i . 2. Nếu không tìm thấy thì trả lời x là hoán v cuối cùng, không có hoán v kế tiếp. 3. Nếu có i nh vậy: Đổi chỗ x i - 1 cho phần tử nhỏ nhất trong các giá tr x i , ,x n v lớn hơn x i 4. Sắp xếp các giá trị x i , ,x n theo thứ tự tăng dần. Ví dụ 3: Với n = 5 Kế tiếp của hoán v (1,2,3,4,5) l hoán vị (1,2,3,5,4) Kế tiếp của hoán v (1,2,3,5,4) l hoán vị (1,2,4,3,5) Kế tiếp của hoán v (1,2,4,3,5) l hoán vị (1,2,4,5,3) Kế tiếp của hoán vị (5,4,3,1,2) l hoán vị (5,4,3,2,1) 7 - Thuật toán liệt kê tất cả các hoán vị ca n s 1,2, ,n 1. Khởi tạo: x = (1,2, ,n) 2. Tìm x' l hoán v kế tiếp của x 3. Nếu không tìm đợc thì dừng. 4. Nếu thấy,thay x bằng x' quay lại 2. Ví dụ 4: Lit kê 24 hoán v của 1,2,3,4 theo thứ tự từ iển. 1234 1243 1324 1342 1423 1432 2134 2143 2314 2341 2413 2431 3124 3142 3214 3241 3412 3421 4123 4132 4213 4231 4312 4321. Ví dụ 5: Cho tp A gm 5 ch s h thp phân A= [1,2,3,4,5] 1. S các s t nhiên 4 ch s lp thnh t 5 ch s trên l 5 4 = 625. 2. S các s t nhiên gm 3 ch s khác nhau lp thnh t 5 ch s trên l . 3. S các tập con 3 phn t của 5 ch s trên l . 4. S các hoán v của 5 s ó l 5! = 120. 5. S các hoán v vòng quanh l Q(n) = 4! = 24. 6. S các hoán v khác nhau có th có khi hoán v các ch cái trong t XAXAM l . 7. S cách chia 7 chic ko cho 4 tr em l . Bài tập Bài toán 1. Liệt kê tất cả các tập con của 1,2, n. Bài toán 2. Lit kê các tổ hợp chập k của tập n phn t 1,2,3,4,5 8 Bài toán 3. Cho tập hợp A= { 1,2, ,n }. Hãy liệt kê tất cả các tập con m phần tử của A theo thứ tự từ điển. Bài toán 4. Liệt kê các xâu nhị phân đọ dài 5 không chứa hai số 0 liên tiếp. Phn III. BI TON TN TI 1) Giới thiệu bài toán: Nếu nh bài toán đếm thực hiện đếm bao nhiêu cấu hình có thể có, thì bài toán tồn tại giải quyết những vấn đề còn nghi vấn nghĩa là ngay cả vấn đề có hay không một cấu hình cũng cha biết. 2) Các ví dụ: Dạng 1: Sử dụng phơng pháp phản chứng: Một trong những cách giải là dùng lập luận phản chứng: giả thiết điều chứng minh là sai từ đó dẫn đến mâu thuẫn. Ví dụ 1: Cho 7 đoạn thẳng có độ dài lớn hơn 10 và nhỏ hơn 100. Chứng minh rằng ta luôn tìm đợc 3 đoạn để có thể ghép lại thành một tam giác. Giải: Điều kiện cần và đủ để 3 đoạn thẳng là cạnh của một tam giác là tổng của hai cạnh phải lớn hơn một cạnh. Ta sắp các đ- ờng thẳng theo thứ tựu tăng dần của độ dài a 1 , a 2 , ,a 7 và chứng minh rằng dãy đa xếp luôn tìm đợc 3 đoạn mà tổng của hai đoạn đầu lớn hơn đoạn cuối. Để chứng minh ta giả sử không tìm đợc 3 đoạn nào mà tổng của hai đoạn nhỏ hơn một đoạn, nghĩa là các bất đẳng thức sau đồng thời xảy ra. a1+a2 a3 a3 20 ( vi a1,a2 10) a2+a3 a4 a4 30 (a2 10,a3 20) a3+a4 a5 a5 50 (a3 20, a4 30) a4+a5 a6 a6 80 (a4 30, a5 50) a5+a6 a7 a7 130 (a5 50, a6 80) mâu thuẫn (bài toán đợc giải quyết) Ví dụ 2: Các đỉnh của một thập giác đều đợc đánh số bởi các số nguyên từ 0, 1, 9 một cách tuỳ ý. Chứng minh rằng luôn tìm đ- ợc ba đỉnh liên tiếp có tổng các số lớn hơn 13. Giải: 9 Gọi x 1 ,x 2 , , x 10 là các số gắn cho đỉnh của thập giác đều. Giả sử ngợc lại ta không tìm đợc 3 đỉnh liên tiếp nào thoả mãm khẳng định trên. Khi đó ta có: K1 = x 1 +x 2 +x 3 13 K2 =x 2 +x 3 +x 4 13 K10 =x 10 +x 1 +x 2 13 => 130 K1 + + K10 = 3(x 1 + + x 10 )= 3 (0+ +9 ) = 135 mâu thuẫn. Ví dụ 3: Cho dãy n 2 +1 số thực phân biệt, chứng minh tồn tại dãy con tăng hoặc gỉam có độ di n+1. Giải: Giả sử a 1 , a 2 , , a n 2 +1 l dãy n 2 + 1 số thực khác nhau . Gọi i k l độ di của dãy con thực sự tăng bắt đầu từ a k v d k l dãy con thực sự giảm bắt đầu từ a k . Ta kếtt hựop số hạng a k của dãy với một cặp có thứ tự l (i k , d k ) Gỉa sử không có dãy con no thực sự tăng hoặc thực sự giảm có độ di n+1 . Thì i k v d k đều l các số nguyên dơng bé hơn hoặc bằng n , k = 1 , 2, , n 2 + 1 .Theo nguyên lý nhân có tất cả n 2 cặp (i k , d k ). Theo nguyên lý Dirichlet, có hai trong số n 2 + 1 cặp thứ tự ny l bằng nhau . Nói cách khác , tồn tại các số a s v a t , s<t , sao cho i s = i t v d s = d t . Điều ny l vô lý , và các sô hạng của dãy l khác nhau , nên a s < a t hoặc a t < a s . Không mất tính tổng quát , giả sử a s < a t thì do i s = i t nên có thể thnh lập một dãy con độ di i t +1 bắt đầu từ a s v i t phần tử tiếp theo l một dãy con tăng bắt đầu từ a t (vô lý) . Dạng 2: Sử dụng nguyên lý Dirichlet. Ví dụ 4: Chứng minh rằng tồn tại số tự nhiên k sao cho 3 k 1 chia hết cho 1000. Giải: Xét dãy 1001 số sau: 1, 3, 3 2 , ,3 1000 . Khi chia 1001 số này cho 1000 có không qua 1000 số d. Theo nguyên lý Dirichlet có ít nhất hai số trong dãy số đó có cùng số d trong phép chia cho 1000. giải sử hai số có tính chất trên là 3 k1 và 3 k2 , k 1 > k 2 . Khi đó, 3 k1 3 k2 chia hết cho 1000. Hay 3 k1 3 k2 = 3 k2 (3 k1-k2 1) chia hết cho 1000. Vì (3,1000) =1 nên (3 k ,1000) = 1. 10

Ngày đăng: 27/06/2015, 09:00

Xem thêm: bai toan dem

TỪ KHÓA LIÊN QUAN

Mục lục

    Dạng 1: Lit kê các hoán v ca tp n phn t

    Vic lit kờ ton b cỏc hoỏn v ca tp X = [x1,x2,...,xm] c quy v vic lit kờ tt c n! hoỏn v ca tp ch s [1,2,...,n]. Ta s lit kờ cỏc hoỏn v ca n s t nhiờn [1,2,...,n] theo th t t in. Nhn xột rng, khi xp theo th t t in, hoỏn v ng trc tiờn s l hoỏn v ( 1,2,3,...,n - 1,n ), hoỏn v ng cui cựng s l hoỏn v ( n,n - 1,...,2,1 ). Vớ d vi n=5, hoỏn v ng u l (1,2,3,4,5), ng cui l (5,4,3,2,1). Trong hoỏn v u tiờn mi s u nh hn s ng ngay sau nú, trong hoỏn v cui cựng thỡ ngc li. Vy k tip sau hoỏn v u tiờn l hoỏn v no?

    Dạng 2: Hoán v k tip ca mt hoán v ( theo th t t iển )

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w