จะช่วยให้ชุดของจำนวนเต็มที่มากกว่า 1 และเรียกว่าX เราจะกำหนดS (i)จะเป็นชุดของสมาชิกทั้งหมดของXหารด้วยฉันที่ฉัน> 1 ต้องการเลือกจากชุดย่อยเหล่านี้กลุ่มของชุดดังกล่าวที่
สหภาพของพวกเขาคือเซตX
ไม่มีองค์ประกอบของXอยู่ในสองชุด
ตัวอย่างเช่นเราสามารถจัดกลุ่มใหม่{3..11}
เป็น
{3,4,5,6,7,8,9,10,11}
S(3): {3, 6, 9, }
S(4): { 4, 8, }
S(5): { 5, 10, }
S(7): { 7, }
S(11):{ 11}
บางชุดไม่สามารถแสดงออกได้ด้วยวิธีนี้ ตัวอย่างเช่นถ้าเราใช้เวลา{3..12}
, 12
มีหลายทั้ง 3 และ 4 การป้องกันไม่ให้ชุดของเราจากการเป็นพิเศษร่วมกัน
บางชุดสามารถแสดงได้หลายวิธีเช่น{4..8}
สามารถแสดงเป็น
{4,5,6,7,8}
S(4): {4, 8}
S(5): { 5, }
S(6): { 6, }
S(7): { 7, }
แต่มันยังสามารถแสดงเป็น
{4,5,6,7,8}
S(2): {4, 6, 8}
S(5): { 5, }
S(7): { 7, }
งาน
เป้าหมายของเราคือการเขียนโปรแกรมที่จะตั้งค่าเป็นอินพุตและเอาต์พุตจำนวนชุดย่อยที่เล็กที่สุดที่ครอบคลุมในแบบนี้ หากไม่มีคุณควรส่งออกค่าอื่นที่ไม่ใช่จำนวนเต็มบวก (ตัวอย่าง0
)
นี่เป็นคำถามเกี่ยวกับรหัสกอล์ฟดังนั้นคำตอบจะได้คะแนนเป็นไบต์โดยไบต์น้อยจะดีขึ้น
การทดสอบ
{3..11} -> 5
{4..8} -> 3
{22,24,26,30} -> 1
{5} -> 1
[5..5]
ไหม เราสามารถรับสิ่งต่าง ๆ ได้[8..4]
ไหม?
12
มีหลายอย่างทั้งสองอย่าง3
และ4
ป้องกันไม่ให้ฉากของเราไม่เกิดร่วมกัน ": ทำไม ฉันไม่เห็นสิ่งใดในคำชี้แจงปัญหาที่ต้องใช้12
ทั้งสองชุดย่อย
[22,24,26,30]
2
คุณแน่ใจหรือว่าจะไม่ดีกว่าที่จะลบและ sandbox มัน?