แรงบันดาลใจจากคำถามนี้กองมากเกิน
ความท้าทาย
อินพุต
อาร์เรย์ของเมทริกซ์จตุรัสที่มีจำนวนเต็มไม่เป็นลบ
เอาท์พุต
เมทริกซ์จตุรัสที่สร้างจากเมทริกซ์อินพุตดังนี้
ให้เป็นขนาดของเมทริกซ์อินพุตแต่ละตัวและคือจำนวนเมทริกซ์อินพุต
เพื่อความชัดเจนให้พิจารณาตัวอย่างเมทริกซ์อินพุตต่อไปนี้ ( , P = 3 ):
3 5
4 10
6 8
12 11
2 0
9 1
- เริ่มต้นด้วยเมทริกซ์อินพุตแรก
- เลื่อนอินพุตเมทริกซ์ที่สองN −1 ก้าวลงและN −1 ก้าวไปทางขวาเพื่อให้รายการเข้ามุมบนซ้ายตรงกับรายการล่างขวาของรายการก่อนหน้า
ลองจินตนาการว่าเมทริกซ์ที่สองนั้นเลื่อนเป็นเมทริกซ์ที่ซ้อนอยู่ด้านบนของเมทริกซ์แรก รวมสองค่าในรายการที่เกิดขึ้นพร้อมกัน เขียนค่าอื่น ๆ และเติมรายการที่เหลือด้วย
0
เพื่อรับเมทริกซ์ด้วยอินพุตตัวอย่างผลลัพธ์ที่ได้คือ3 5 0 4 16 8 0 12 11
สำหรับเมทริกซ์อินพุทที่เหลือแต่ละตัวให้เดินโซเซเพื่อให้มุมบนซ้ายตรงกับมุมล่างขวาของเมทริกซ์ผลลัพธ์ที่สะสมจนถึงตอนนี้ ในตัวอย่างรวมถึงเมทริกซ์อินพุตที่สามให้
3 5 0 0 4 16 8 0 0 12 13 0 0 0 9 1
ouput คือเมทริกซ์เมทริกซ์ที่ได้รับหลังจากรวมเมทริกซ์อินพุตสุดท้าย
กฎและคำชี้แจงเพิ่มเติม
- และเป็นจำนวนเต็มบวก
- คุณสามารถเลือกใช้และเป็นอินพุตเพิ่มเติมได้
- input และ output สามารถดำเนินการโดยวิธีการที่เหมาะสมใด ๆ รูปแบบของพวกเขายืดหยุ่นตามปกติ
- โปรแกรมหรือฟังก์ชั่นที่ได้รับอนุญาตในการเขียนโปรแกรมภาษา ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม
- รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ
กรณีทดสอบ:
ในแต่ละกรณีเมทริกซ์อินพุตจะแสดงก่อนจากนั้นจึงแสดงผลลัพธ์
, :
3 5 4 10 6 8 12 11 2 0 9 1 3 5 0 0 4 16 8 0 0 12 13 0 0 0 9 1
, :
3 5 4 10 3 5 4 10
, :
4 7 23 5 39
, :
11 11 8 6 8 12 11 0 4 4 1 13 9 19 11 13 4 2 11 11 8 0 0 6 8 12 0 0 11 0 8 1 13 0 0 9 19 11 0 0 13 4 2
, :
14 13 10 0 13 20 21 3 9 22 0 8 17 3 19 16 14 13 0 0 0 10 13 20 0 0 0 21 12 22 0 0 0 0 25 3 0 0 0 19 16