ใช้เมทริกซ์จตุรัสที่มีจำนวนเต็มบวกเป็นอินพุตและคำนวณ "ผลรวมการหมุน" ของเมทริกซ์
ผลรวมการหมุน:
หาผลรวมของเมทริกซ์ดั้งเดิมและเมทริกซ์เดียวกันหมุน 90, 180 และ 270 องศา
สมมติว่าเมทริกซ์คือ:
2 5 8
3 12 8
6 6 10
จากนั้นผลรวมการหมุนจะเป็น:
2 5 8 8 8 10 10 6 6 6 3 2
3 12 8 + 5 12 6 + 8 12 3 + 6 12 5 =
6 6 10 2 3 6 8 5 2 10 8 8
26 22 26
22 48 22
26 22 26
กรณีทดสอบ:
อินพุตและเอาต์พุตคั่นด้วยเครื่องหมายขีดคั่นกรณีทดสอบที่แตกต่างกันคั่นด้วยบรรทัดใหม่ กรณีทดสอบในรูปแบบที่สะดวกมากขึ้นสามารถพบได้ที่นี่
1
-------------
4
1 3
2 4
-------------
10 10
10 10
14 6 7 14
6 12 13 13
6 2 3 10
5 1 12 12
-------------
45 37 24 45
24 30 30 37
37 30 30 24
45 24 37 45
14 2 5 10 2
18 9 12 1 9
3 1 5 11 14
13 20 7 19 12
2 1 9 5 6
-------------
24 29 31 41 24
41 49 31 49 29
31 31 20 31 31
29 49 31 49 41
24 41 31 29 24
f=lambda*l:l[3:]and[map(sum,zip(*d))for d in zip(*l)]or f(zip(*l[0][::-1]),*l)
บันทึกสองไบต์ด้วยอินพุต "ปกติ" ลองออนไลน์!