สิ่งที่คุณเสนอคือความแตกต่างของปัญหาเป้ด้วยการเพิ่มการบิดที่เนื่องจากการบีบอัดไฟล์คุณจะไม่เริ่มรู้เลยว่า "เป้สะพายหลัง" ขนาด 20MB ของคุณแต่ละรายการจะครอบครอง
แน่นอนว่าโซลูชันเล็ก ๆ น้อย ๆ นั้นคือการซิปไฟล์แต่ละไฟล์อย่างอิสระ แต่นั่นก็ไม่สามารถลดจำนวนไฟล์ได้ดังนั้นฉันคิดว่ามันจะไม่เป็นทางออกที่น่าพอใจ
หากฉันพบปัญหานี้ฉันคิดว่าฉันจะเริ่มต้นด้วยการบีบอัดแต่ละไฟล์ไปยังตำแหน่งชั่วคราว (หรือในหน่วยความจำโดยไม่ต้องเขียนลงดิสก์) เพื่อให้ได้ขนาดที่บีบอัดโดยประมาณสำหรับแต่ละไฟล์ จากข้อมูลนั้นมันจะเป็นไปได้ที่จะตัดสินใจว่าไฟล์ใดควรจัดกลุ่มเข้าด้วยกันโดยใช้วิธีมาตรฐานใด ๆ ในปัญหาเครื่องหลังและสร้างไฟล์ zip จริง
สมมติว่าคุณมีภาษาสคริปต์สำหรับคุณและคุณรู้วิธีใช้มันฉันคาดหวังว่าวิธีการนี้จะตรงไปตรงมาโดยอัตโนมัติ ทำด้วยตนเองจะค่อนข้างน่าเบื่อถ้าคุณมีมากกว่าหนึ่งไฟล์ที่จะจัดการกับ ...