ตอบ 9
แนวคิด
เซตที่อยู่ในลำดับดังกล่าวคือ {1, 2, 8, 10, 11, 12, 15, 16, 17} สามารถทำได้อย่างน้อยสองวิธี
วิธีที่ 1. สามารถเขียนโปรแกรมเพื่อจัดเรียงสับเซตและหาคำตอบโดยตรง (วิธีนี้ถ้า N มีขนาดใหญ่ เช่น มากกว่า 30 จะใช้เวลาการทำงานนานมาก)
วิธีที่ 2. สังเกตว่า ถ้าเราเขียนสับเซตให้อยู่ในรูปของเลขฐานสอง โดยพิจารณาการมีอยู่หรือไม่มีสมาชิกแต่ละตัว ดังตัวอย่างที่ N=3 ดังตัวอย่างด้านล่าง เช่น
{1,2,3} เขียนเป็น 111 {1,2} เขียนเป็น 110 และ {2,3} เขียนเป็น 011
เราจะพบว่าการเรียงลำดับจะเป็นการเรียงเลขฐานสองจากมากไปหาน้อย ดังนี้
{1,2,3} 111
{1,2} 110
{1,3} 101
{1} 100
{2,3} 011
{2} 010
{3} 001
{} 000
ดังนั้นเมื่อพิจารณากรณีที่ N = 20 แต่ละสับเซตจะเป็นจำนวนเลขฐานสองที่มี 20 หลัก มีจำนวน 220 = 1,048,576 สับเซต
สับเซตแรกจะเป็น 11111111111111111111 แทนเซต U สังเกตว่าเป็นเต็มที่มีค่าเท่ากับ 1,048,575
สับเซตสุดท้าย (ลำดับที่ 1,048,576) เป็น 00000000000000000000 แทนเซต {}
สังเกตว่าเป็นจำนวนเต็มที่มีค่าเท่ากับ 0
ในการหาคำตอบ เราจะหาเซตลำดับที่ 256,200 เมื่อเทียบจะพบว่าเป็นค่าจำนวนเต็มที่มีค่าเท่ากับ 1,048,576 - 256,200 = 792,376 เมื่อแปลงเป็นเลขฐานสอง 30 หลักจะได้เป็น
11000 00101 11001 11000 เทียบเท่ากับสับเซต {1, 2, 8, 10, 11, 12, 15, 16, 17} ที่มีสมาชิกจำนวน 9 ตัว