Bilgi
1'den 9'a kadar olan sayıların her biri Moore Mahallesi'ndeki bir hücreyi temsil eder , 5 tanesi merkez hücredir. Yani:
123
456
789
1={-1,-1} 2={-1, 0} 3={-1, 1}
4={ 0,-1} 5={ 0, 0} 6={ 0, 1}
7={ 1,-1} 8={ 1, 0} 9={ 1, 1}
Meydan okuma
STDIN, ARGV veya işlev bağımsız değişkeni ile girdi alabilir ve sonucu döndürebilir veya STDOUT'a yazdırabilirsiniz. Giriş bir N x N ızgaradır (torus topolojisi, yani x veya y <1 sonra x veya y = N ve x veya y> N sonra x veya y = 1 ise) ve programınız bunun bir entegrasyonunu çıkarmalıdır her hücreyi Moore'un Mahalle hücresindeki değerle değiştirerek
Örnek Giriş ızgarası (2 x 2):
13
79
Çıktı:
97
31
Açıklama:
1,1 konumundan başlayarak 1 değerine sahibiz, çünkü 1 = {- 1, -1} değerine 1 + (- 1), 1 + (- 1) = 0,0 değerini getirmeliyiz. Ve bu bir torus 0,0 olduğundan N'ye sarılırız. Bu nedenle, 1,1 (1) konumundaki hücre değerini, 2,2 (9) konumundaki hücre değeriyle alırız.
Bir sonraki hücre 1,2 için 3 (= -1, 1) değerine sahibiz, böylece 1 + (- 1), 2 + (1) = 0,3. 7 değeri olan 2,1'e sarar.
2,1'deki bir sonraki hücre değeri 7 (= 1, -1) yani 2+ (1), 1 + (- 1) = 3,0. 3 değeri olan 1,2'ye sarar.
2,2'deki bir sonraki hücre değeri 9 (= 1, 1) yani 2+ (1), 2 + (1) = 3,3'tür. 1 değeri olan 1,1'e sarar.
Daha fazla örnek
Giriş Izgarası (3 x 3):
123
456
789
Beklenen çıktı:
987
654
321
Giriş Izgarası (5 x 5):
77497
81982
32236
96336
67811
Beklenen çıktı:
28728
37337
11923
73369
77433
Son Notlar
Herhangi bir sorunuz varsa yorum yapmaktan çekinmeyin. Bu bir kod golf meydan okuma, en kısa kod kazanır!