พื้นหลัง
deltaของอาร์เรย์ของจำนวนเต็มเป็นอาร์เรย์ที่เกิดขึ้นจากการรับความแตกต่างขององค์ประกอบที่ต่อเนื่องกัน ตัวอย่างเช่นมีสันดอนต่อไปนี้:[1, 2, 4, 7, 3, 9, 6]
[1, 2, 3, -4, 6, -3]
ตอนนี้เราจะกำหนดเดลตาของเมทริกซ์ของจำนวนเต็มเป็นเดลตาของแต่ละแถวและแต่ละคอลัมน์ที่มี
ตัวอย่างเช่น:
Row deltas:
1 2 3 4 │ => [1, 1, 1]
4 5 6 7 │ => [1, 1, 1]
7 1 8 2 │ => [-6, 7, -6]
Column deltas (the matrix' columns have been rotated into rows for simplicity):
1 4 7 │ => [3, 3]
2 5 1 │ => [3, -4]
3 6 8 │ => [3, 2]
4 7 2 │ => [3, -5]
ซึ่งทำให้เรามีรายการของเมทริกซ์เดลต้าต่อไปนี้:
[[1, 1, 1], [1, 1, 1], [-6, 7, -6], [3, 3], [3, -4], [3, 2], [3, -5]]
และในขณะที่เราไม่ต้องการให้มันซ้อนกันเราจึงเรียบรายการนั้น:
[1, 1, 1, 1, 1, 1, -6, 7, -6, 3, 3, 3, -4, 3, 2, 3, -5]
งาน
งานของคุณคือการหาผลรวมของเดลต้าทั้งหมดของเมทริกซ์ที่ได้รับเป็นอินพุต โปรดทราบว่าเมทริกซ์จะประกอบด้วยจำนวนเต็มไม่เป็นลบเท่านั้น
กฎระเบียบ
ใช้กฎมาตรฐานทั้งหมด
คุณอาจจะสมมติเมทริกซ์มีอย่างน้อยสองค่าในแต่ละแถวและคอลัมน์ดังนั้นขนาดต่ำสุดจะเป็น2x2
คุณสามารถใช้เมทริกซ์ในรูปแบบที่สมเหตุสมผลได้ตราบใดที่คุณระบุ
คุณอาจไม่คิดว่าเมทริกซ์นั้นกำลังสอง
หากอาจช่วยให้คุณลดจำนวนไบต์คุณอาจเลือกที่จะใช้จำนวนแถวและจำนวนคอลัมน์เป็นอินพุตเช่นกัน (ดูที่คุณ C!)
นี่คือ code-golf ดังนั้นรหัสที่สั้นที่สุด (เป็นไบต์) ในแต่ละภาษาจะชนะ!
กรณีทดสอบ
อินพุต => เอาท์พุท [[1, 2], [1, 2]] => 2 [[8, 7, 1], [4, 1, 3], [5, 5, 5]] => -9 [[1, 2, 3], [4, 5, 6], [7, 8, 9]] => 24 [[9, 9, 9, 9, 9], [9, 9, 9, 9, 9]] => 0 [[1, 3, 14], [56, 89, 20], [99, 99, 99]] => 256 [[1, 2, 3, 4], [4, 5, 6, 7], [7, 1, 8, 2]] => 9 [[13, 19, 478], [0, 12, 4], [45, 3, 6], [1, 2, 3]] => -72
ṁ
โดยใช้