ดูหนึ่งข้อความ
  #1  
Old 10 กุมภาพันธ์ 2016, 06:29
Nutphi Nutphi ไม่อยู่ในระบบ
สมาชิกใหม่
 
วันที่สมัครสมาชิก: 10 กุมภาพันธ์ 2016
ข้อความ: 1
Nutphi is on a distinguished road
Exclamation ถามเรื่อง เรียงสับเปลี่ยน ครับ

ผมมีคำถาม เรื่องการเรียงสับเปลี่ยนครับ

มีนักเรียนชายอยู่ n คน ยืนเรียงเข้าแถวจากคนตัวเตี้ยไปคนตัวสูงแล้ว
มีนักเรียนหญิงอยู่ m คน ยืนเรียงเข้าแถวจากคนตัวเตี้ยไปคนตัวสูงเหมือนกัน
ถามว่ามีกี่วิธีที่จะยืนเรียงเข้าแถวจากคนตัวเตี้ยไปคนตัวสูง โดยรวมแถวนักเรียนชายและแถวนักเรียนหญิงเข้าด้วยกันครับ

ซึ่งกรณีที่นักเรียนหญิงสูงเท่ากันหลายคน หรือนักเรียนชายสูงเท่ากันหลายคน ในการรวมแถวนักเรียน เวลาที่มาเรียงนักเรียนชายหญิงเป็นแถวเดียวกัน ซึ่งไม่สามารถสลับที่ได้
และถ้ากรณีที่ชายสูงเท่ากับผู้หญิงให้ผู้ชายอยู่หน้า

อย่างเช่น ในแถวนักเรียนชายยืนเรียงแถวจาก M1 สูง 150 และ M2 สูง 150 ส่วนแถวนักเรียนหญิงยืนเรียงแถวจาก F1 สูง 150 และ F2 สูง 150 เวลารวมแถวจะได้ M1 M2 F1 F2 เท่านั้น
(ไม่สามารถสลับที่ในแถวจาก M1 M2 เป็น M2 M1 ได้)

ขอเป็นค่าติดตัวแปรนะครับ
ขอบคุณมากเลยครับ

ป.ล.
ผมได้ลองเขียนทุกกรณีของ แถวของนักเรียนชายและนักเรียนหญิง ที่มีจำนวนตั้งแต่ 1-3 คน แล้วครับ โดยใช้วิธีของ Decision Tree.

โดยที่ผมกำหนดให้ นักเรียนชาย และ นักเรียนหญิง แทนด้วย A และ B

ตัวเลข คือ ลำดับของคนในแถวนักเรียนชาย/หญิงก่อนที่จะรวมแถวครับ

กรณีแถวนักเรียนชายมี 1 คน และ แถวนักเรียนหญิงมี 1 คน
[1A] [1B] => [1A,1B] , [1B,1A] จะได้ 2 วิธี

กรณีแถวนักเรียนชายมี 2 คน และ แถวนักเรียนหญิงมี 1 คน
[1A,2A] [1B] => [1A,2A,1B] , [1A,1B,2A] , [1B,1A,2A] จะได้ 3 วิธี

กรณีแถวนักเรียนชายมี 3 คน และ แถวนักเรียนหญิงมี 1 คน
[1A,2A,3A] [1B] => [1A,2A,3A,1B] , [1A,2A,1B,3A] , [1A,1B,2A,3A] , [1B,1A,2A,3A] จะได้ 4 วิธี

กรณีแถวนักเรียนชายมี 2 คน และ แถวนักเรียนหญิงมี 2 คน
[1A,2A] [1B,2B] => [1A,2A,1B,2B] , [1A,1B,2A,2B] , [1A,1B,2B,2A] , [1B,1A,2A,2B] , [1B,1A,2B,2A] , [1B,2B,1A,2A] จะได้ 6 วิธี

กรณีแถวนักเรียนชายมี 3 คน และ แถวนักเรียนหญิงมี 2 คน
[1A,2A,3A] [1B,2B] => [1A,2A,3A,1B,2B] , [1A,2A,1B,3A,2B] , [1A,2A,1B,2B,3A] ,
[1A,1B,2A,3A,2B] , [1A,1B,2A,2B,3A] , [1A,1B,2B,2A,3A] ,
[1B,1A,2A,3A,2B] , [1B,1A,2A,2B,3A] , [1B,1A,2B,2A,3A] ,
[1B,2B,1A,2A,3A] จะได้ 10 วิธี

กรณีแถวนักเรียนชายมี 3 คน และ แถวนักเรียนหญิงมี 3 คน
[1A,2A,3A] [1B,2B,3B] => [1A,2A,3A,1B,2B,3B] ,
[1A,2A,1B,3A,2B,3B] , [1A,2A,1B,2B,3A,3B] , [1A,2A,1B,2B,3B,3A] ,
[1A,1B,2A,3A,2B,3B] , [1A,1B,2A,2B,3A,3B] , [1A,1B,2A,2B,3B,3A] ,
[1A,1B,2B,2A,3A,3B] , [1A,1B,2B,2A,3B,3A] , [1A,1B,2B,3B,2A,3A] ,
[1B,1A,2A,3A,2B,3B] , [1B,1A,2A,2B,3A,3B] , [1B,1A,2A,2B,3B,3A] ,
[1B,1A,2B,2A,3A,3B] , [1B,1A,2B,2A,3B,3A] , [1B,1A,2B,3B,2A,3A] ,
[1B,2B,1A,2A,3A,3B] , [1B,2B,1A,2A,3B,3A] , [1B,2B,1A,3B,2A,3A] ,
[1B,2B,3B,1A,2A,3A] จะได้ 20 วิธี

11 กุมภาพันธ์ 2016 23:14 : ข้อความนี้ถูกแก้ไขแล้ว 2 ครั้ง, ครั้งล่าสุดโดยคุณ Nutphi
เหตุผล: ทำให้คำถามเข้าใจง่ายขึ้น และต้องการเพิ่มข้อมูลเพื่อช่วยในการหาคำตอบครับ
ตอบพร้อมอ้างอิงข้อความนี้