|
|
|
|
@ -120,37 +120,19 @@ func NumberSpiral(row, col int) int64 {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
switch {
|
|
|
|
|
case row == col:
|
|
|
|
|
return result
|
|
|
|
|
case col > row:
|
|
|
|
|
if col%2 == 1 {
|
|
|
|
|
return result + int64(size-row)
|
|
|
|
|
result = result + int64(size-row)
|
|
|
|
|
} else {
|
|
|
|
|
return result + int64(row-size)
|
|
|
|
|
result = result + int64(row-size)
|
|
|
|
|
}
|
|
|
|
|
case col < row:
|
|
|
|
|
if row%2 == 1 {
|
|
|
|
|
return result + int64(col-size)
|
|
|
|
|
result = result + int64(col-size)
|
|
|
|
|
} else {
|
|
|
|
|
return result + int64(size-col)
|
|
|
|
|
}
|
|
|
|
|
result = result + int64(size-col)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return 0
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
maxLoops := size * size
|
|
|
|
|
i := int32(1)
|
|
|
|
|
j := int32(1)
|
|
|
|
|
|
|
|
|
|
for n := int64(1); n <= maxLoops; n++ {
|
|
|
|
|
if i == y && j == x {
|
|
|
|
|
return n
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return 0
|
|
|
|
|
*/
|
|
|
|
|
return result
|
|
|
|
|
}
|
|
|
|
|
|