วิธีลดปัญหากระเป๋าเป้สะพายหลัง
Oct 25 2020
ฉันมีข้อความแจ้งปัญหาที่ดูเหมือนจะเป็นปัญหากระเป๋าเป้รุ่นลดลง แต่ฉันไม่รู้ว่าจะทำอย่างไรใน Mathematica
ปัญหามีดังนี้: เมื่อกำหนดเซต S ของจำนวนเต็ม (เช่น {a, b, c, ... }) และจำนวนเต็ม T ให้ค้นหาชุดค่าผสมที่เป็นไปได้ทั้งหมดขององค์ประกอบของ S ที่มีผลรวมตรงกับ T (เช่นส่งกลับ {a, d, e} และ {e, f} เพราะ a + d + e = T และ e + f = T)
คำตอบ
11 ciao Oct 25 2020 at 13:18
Select[Subsets[s], Tr@# == t&]
ควรทำสิ่งที่คุณต้องการให้สำเร็จ
หากคุณต้องการอนุญาตผลลัพธ์หลายชุด
IntegerPartitions[t, All, s]