package main import( "fmt" ) func main() { m := make([]int, 9) for i:=0; i<9; i++ { var v int fmt.Scan(&v) m[i] = v } a := make([][]int, 8) a[0] = []int { 4,9,2,3,5,7,8,1,6 } a[1] = []int { 8,1,6,3,5,7,4,9,2 } a[2] = []int { 2,9,4,7,5,3,6,1,8 } a[3] = []int { 6,1,8,7,5,3,2,9,4 } a[4] = []int { 8,3,4,1,5,9,6,7,2 } a[5] = []int { 6,7,2,1,5,9,8,3,4 } a[6] = []int { 4,3,8,9,5,1,2,7,6 } a[7] = []int { 2,7,6,9,5,1,4,3,8 } min := 100000 for i:=0; i<8; i++ { //fmt.Println(m) //fmt.Println(a[i]) cost := 0 for j:=0; j<9; j++{ if a[i][j] != m[j] { c := m[j]-a[i][j] //fmt.Printf("%d - %d = %d\n", m[j], a[i][j], c) if c < 0 { cost += -c } else { cost += c } } } //fmt.Println(cost) if cost < min { min = cost } } fmt.Println(min) }