(หวังว่ามันยังคงเป็นวันขอบคุณพระเจ้าสำหรับคุณ)
คุณมีไก่งวงสำหรับอาหารค่ำวันขอบคุณพระเจ้าของคุณ แต่คุณไม่ทราบวิธีกระจายอย่างสม่ำเสมอ ปัญหาคือบางคนกินมากกว่าคนอื่นดังนั้นคุณต้องหาทางออก
อินพุต
จะมีสองอินพุต ครั้งแรกจะเป็นศิลปะ ASCII ของคนต่าง ๆ
o
o \|/
\|/ |
| |
/ \ / \
ข้อมูลจำเพาะศิลปะ
แต่ละคนใช้ความกว้าง 3 คอลัมน์ แต่ละคนถูกคั่นด้วยคอลัมน์ของช่องว่างเดียว o
ด้านบนสุดของแต่ละคนเป็น ด้านล่างo
, ชดเชยด้วย1
และ-1
ใน x, คือ\
และ/
, ตามลำดับ จากแถวที่หนึ่งo
ถึงสองในแถวสุดท้ายของอินพุทคือ|
จำนวนของสิ่งเหล่านี้ต่อคนคือ "ความสูง" ของพวกเขา ข้อมูลเดียวที่คุณจะต้องดึงออกมาจากแต่ละคนคือ "ความสูง" ของพวกเขา
จะมีอย่างน้อยหนึ่งคน แต่ละคนมีความสูงอย่างน้อย 2 ตัวเสมอ ความสูงสูงสุดที่โปรแกรมของคุณควรจัดการเป็นอย่างน้อยความสูง 64
หากคุณต้องการให้การป้อนข้อมูลเต็มไปด้วยช่องว่างในรูปแบบสี่เหลี่ยมผืนผ้าโปรดระบุสิ่งนี้ในคำตอบของคุณ
อินพุตที่สองคือไก่งวง ไก่งวงไม่ได้เป็นไก่งวงจริงNxM
ขนาดของไก่งวง หากอินพุตที่สองคือ3x2
ไก่งวงจะมีขนาด 3 * 2 พร้อมพื้นที่ทั้งหมด 6
เอาท์พุต
ผลลัพธ์อาจเป็นรายการหรือทางเลือกที่ใกล้เคียงที่สุดกับภาษาของคุณ (เช่น Array) นอกจากนี้คุณยังสามารถส่งออกสตริงโดยมีค่าคั่นด้วยช่องว่าง
ค่าสำหรับแต่ละคนควรส่งออกตามลำดับที่พวกเขาป้อนข้อมูล
ท้าทาย
เป้าหมายของคุณคือการแบ่งพื้นที่ของไก่งวงในหมู่คน
ตัวอย่างสถานการณ์:
สมมติว่าพวกเขาเป็นคนสองคนที่มีความสูง3
และ6
ตามลำดับ 5x3
หากมีไก่งวง พื้นที่ทั้งหมดของไก่งวงที่จะต้องมีการแจกจ่ายคือ15
พื้นที่ทั้งหมดของไก่งวงที่จะต้องมีการกระจาย
ตอนนี้คุณจะกระจายมันอย่างไรในทุกคน? นี่คือวิธี:
the_persons_height
TurkeyForAPerson = -------------------- * turkey_area
sum_of_all_heights
ซึ่งหมายความว่าสำหรับคนแรกที่มีความสูงของ3
พวกเขาจะได้รับ3/9*15
ไก่งวงหรือ5
คนที่สองที่มีความสูงของ6
พวกเขาจะได้รับ6/9*15
หรือ10
ไก่งวง
เอาท์พุต
ผลลัพธ์จะต้องประกอบด้วยตัวเลขเท่านั้นและ.
เว้นแต่คุณเลือกที่จะรับโบนัส ในกรณีนี้อาจประกอบด้วยตัวเลขช่องว่าง ( ) และเครื่องหมายทับ (
/
)
ตัวอย่างเต็ม
การป้อนข้อมูล:
6x5
o
|
o \|/
\|/ |
| |
| |
/ \ / \
เอาท์พุท:
11.25 18.75
โบนัส
-20% โบนัส:คุณส่งออกเศษส่วน (ต้องง่ายขึ้น) มันไม่สำคัญว่าจะเป็นเศษส่วนแบบผสมหรือไม่เหมาะสม
เกณฑ์การให้คะแนน
นี่คือโค้ดกอล์ฟที่สั้นที่สุดในหน่วยไบต์!