ช่วย PPCG Claus ส่งของขวัญของเขา
ภาพรวม
PPCG Claus กำลังทำงานเฮลล่าส่งของขวัญของเขาช้าเพราะทุกวันนี้เรามี kiddos เล็ก ๆ น้อย ๆ ที่แปลกออกไปมากมาย สิ่งนี้ทำให้ PPCG Claus ยากที่จะรับของขวัญทั้งหมดไปยังสถานที่ที่ถูกต้อง ความท้าทายของคุณคือการช่วยให้เขานำเสนอของเขาได้อย่างถูกต้อง
ความซับซ้อน
ด้วยรายชื่อแรกที่เป็นตัวพิมพ์ใหญ่ซึ่งเป็นตัวแทนของเด็ก ๆ ที่เขาควรส่งให้และรายการของขวัญที่แสดงเป็นตัวเลขคุณจะต้องหาวิธีการแจกของขวัญในหมู่เด็ก ๆ ที่กล่าวมา แน่นอนว่ามีการจับแม้ว่า ....
ทุกวันนี้เด็ก ๆ จะจู้จี้จุกจิกถ้า kiddo เป็นเพื่อนที่แปลก (ตอนแรกคือรหัส ASCII คี่) เขาต้องการของขวัญแปลก ๆ ! หากเขาเป็นเพื่อนกัน (เริ่มแรกคือรหัส ASCII แม้) เขาเห็นได้ชัดว่าจะต้องได้รับแม้แต่คนเดียว! อย่างไรก็ตามเด็กที่มีการหารด้วย 3 เป็นเด็กซนที่ซุกซนดังนั้น PPCG Claus จะต้องไม่สนใจพวกเขาอย่างสมบูรณ์เพื่อให้พวกเขาประพฤติตนในปีหน้า ในการพิจารณาเส้นทางของเขาให้ประสบความสำเร็จเขาจะต้องมอบของขวัญทั้งหมดให้กับเด็กทุกคนที่สมควรได้รับและจะต้องไม่มอบของขวัญให้เด็กจำนวนมากเกินไป หากเด็กคนใดได้รับของขวัญมากกว่า 3 ชิ้นมากกว่าเพื่อนของเขาเขาอาจเสี่ยงต่อการเป็นเด็กซนในปีหน้าและนั่นก็ไม่ถูกต้อง! นอกจากนี้หากเด็กดีๆ คนใดต้องรับของขวัญเมื่อเด็กดีอีกคนไม่ทำเช่นนั้นก็จะทำให้เด็กคนนั้นชั่ว
ตัวอย่าง
เด็ก ๆ มีดังนี้:
Kids = ["Amy", "Betty", "Clyde", "Dave", "Francine"] = [A,B,C,D,F] = [65,66,67,68,70]
- Betty เป็นความหายนะของมนุษยชาติอย่างชัดเจนด้วยจำนวน 3
- เอมี่และไคลด์เป็นคนประหลาดตั้งแต่แรกเกิดและเกลียดที่จะได้รับของขวัญ
- เดฟและฟรานซีนเป็นเรื่องปกติแม้แต่เด็ก ๆ พวกเขาควรได้รับของขวัญเท่านั้น!
ของขวัญมีดังนี้:
Presents = [1,2,3,4,5,6,7,8,9,10,11,12,13,14]
หนึ่งผลลัพธ์ที่เป็นไปได้คือ:
[
['Amy',[1,3,5]],
['Betty',[]],
['Clyde',[7,9,11,13]],
['Dave',[2,4,6,8]],
['Francine',[10,12,14]]
]
สถานการณ์ข้อยกเว้น
อย่างไรก็ตามเพียงเพราะ PPCG Claus พร้อมและเต็มใจไม่ได้หมายความว่า PPCG Claus สามารถทำได้ ต่อไปนี้เป็นรายการสถานการณ์สมมติยกเว้นที่คุณต้องแบ่งข่าวร้ายให้กับ PPCG Claus ด้วยข้อความ:
PPCGmas is cancelled!
สถานการณ์ต่อไปนี้จะส่งผลให้คริสต์มาสถูกยกเลิก:
- ไม่มีลูก
[],[1,2,3]
- Wellp พวกเขาอุทิศ
- ไม่มีลูกดี
["Betty"],[1,2,3]
- หมุนเกลียว Betty อย่างจริงจัง
- ไม่มีของขวัญหรือมีของขวัญน้อยกว่าเด็กดี
["Amy","Charles"],[]
- อย่างน้อยหนึ่งรายการจะไม่ได้รับของขวัญ["Amy","Charles"],[1]
- อย่างน้อยหนึ่งรายการจะไม่ได้รับของขวัญ
- ไม่มีของแปลก / แม้กระทั่งของขวัญเพื่อตอบสนองเด็กดีทั้งหมด
["Amy","Dave"],[2,4,6]
- เอมี่ถูกเมาไป
นี่คือรายการสถานการณ์ที่ไม่ควรส่งผลกระทบต่อ PPCGmas:
- ของขวัญที่เหลือ (เด็กทุกคนควรได้รับของขวัญจำนวนมากที่สุด)
["Amy","Dave"],[2,4,6,8,10,12,14,7,9] = [["Amy",[7,9]],["Dave",[2,4,6,8]]]
กฎหลักที่กล่าวถึง
- เด็กดีมีความเท่าเทียมหรือแปลกตามการเริ่มต้นครั้งแรก
- เด็กที่ไม่ดีจะมีตัวแรกที่สามารถหารได้ด้วย 3
- เด็กดีทุกคนจะต้องได้รับของขวัญอย่างน้อยหนึ่งรายการ
- ไม่มีเด็กดีที่จะได้รับมากกว่า 2 ของขวัญมากกว่าเด็กดีอื่น ๆ
- หากมีของกำนัลเหลือคุณต้องแจกจ่ายให้มากที่สุดโดยไม่ละเมิด 4
- เด็กที่ไม่ดีจะต้องไม่รับของขวัญเลย
- หากมีการละเมิดข้อใดข้อหนึ่งคุณต้องส่งออก
PPCGmas is cancelled!
อย่างแน่นอน
ข้อกำหนดการจัดรูปแบบ I / O
- อินพุตแรกจะต้องเป็นสตริง / รายการ / สตริงที่คั่นด้วยจุลภาคของชื่อเต็มไม่ใช่แค่ชื่อแรก
- อินพุตที่ 2 ต้องเป็นสตริงอาร์เรย์ / รายการ / คั่นด้วยเครื่องหมายจุลภาคของจำนวนเต็มบวก
- ผลลัพธ์อาจเป็นการแสดงถึงวิธีการแจกจ่ายของขวัญที่เหมาะสม
PPCGmas is Cancelled!
หรือ
เกณฑ์การชนะ: รหัส - กอล์ฟ
TL; DR: เบ็ตตี้เป็นคนที่กระตุกไม่ต้องแข่งขัน
3
? แก้ไข : ถ้าหนึ่งควร "ขัน Betty" ทำไมเธออยู่ในความท้าทายเลยหรือไม่