using System; using System.Collections.Generic; using System.IO; class Solution { static void Main(String[] args) { /* Enter your code here. Read input from STDIN. Print output to STDOUT. Your class should be named Solution Center of magic square of size 3x3 is always 5. No corner cell can contain an odd integer.*/ var s1 = Console.ReadLine().Split(' '); var s2 = Console.ReadLine().Split(' '); var s3 = Console.ReadLine().Split(' '); var a = new int[3,3]; var sq1 = new int[3,3]; var sq2 = new int[3,3]; var sq3 = new int[3,3]; var sq4 = new int[3,3]; var sq5 = new int[3,3]; var sq6 = new int[3,3]; var sq7 = new int[3,3]; var sq8 = new int[3,3]; a[0,0] = Convert.ToInt32(s1[0]); a[0,1] = Convert.ToInt32(s1[1]); a[0,2] = Convert.ToInt32(s1[2]); a[1,0] = Convert.ToInt32(s2[0]); a[1,1] = Convert.ToInt32(s2[1]); a[1,2] = Convert.ToInt32(s2[2]); a[2,0] = Convert.ToInt32(s3[0]); a[2,1] = Convert.ToInt32(s3[1]); a[2,2] = Convert.ToInt32(s3[2]); int cost1 = 0, cost2 = 0, cost3 = 0, cost4 = 0, cost5 = 0, cost6 = 0, cost7=0, cost8=0; int minCost; cost1 += Math.Abs(a[0,0] - 4); cost1 += Math.Abs(a[0,1] - 9); cost1 += Math.Abs(a[0,2] - 2); cost1 += Math.Abs(a[1,0] - 3); cost1 += Math.Abs(a[1,1] - 5); cost1 += Math.Abs(a[1,2] - 7); cost1 += Math.Abs(a[2,0] - 8); cost1 += Math.Abs(a[2,1] - 1); cost1 += Math.Abs(a[2,2] - 6); minCost = cost1; cost2 += Math.Abs(a[0,0] - 8); cost2 += Math.Abs(a[0,1] - 1); cost2 += Math.Abs(a[0,2] - 6); cost2 += Math.Abs(a[1,0] - 3); cost2 += Math.Abs(a[1,1] - 5); cost2 += Math.Abs(a[1,2] - 7); cost2 += Math.Abs(a[2,0] - 4); cost2 += Math.Abs(a[2,1] - 9); cost2 += Math.Abs(a[2,2] - 2); minCost = (minCost > cost2 ? cost2 : minCost); cost3 += Math.Abs(a[0,0] - 6); cost3 += Math.Abs(a[0,1] - 1); cost3 += Math.Abs(a[0,2] - 8); cost3 += Math.Abs(a[1,0] - 7); cost3 += Math.Abs(a[1,1] - 5); cost3 += Math.Abs(a[1,2] - 3); cost3 += Math.Abs(a[2,0] - 2); cost3 += Math.Abs(a[2,1] - 9); cost3 += Math.Abs(a[2,2] - 4); minCost = (minCost > cost3 ? cost3 : minCost); cost4 += Math.Abs(a[0,0] - 8); cost4 += Math.Abs(a[0,1] - 3); cost4 += Math.Abs(a[0,2] - 4); cost4 += Math.Abs(a[1,0] - 1); cost4 += Math.Abs(a[1,1] - 5); cost4 += Math.Abs(a[1,2] - 9); cost4 += Math.Abs(a[2,0] - 6); cost4 += Math.Abs(a[2,1] - 7); cost4 += Math.Abs(a[2,2] - 2); minCost = (minCost > cost4 ? cost4 : minCost); cost5 += Math.Abs(a[0,0] - 4); cost5 += Math.Abs(a[0,1] - 3); cost5 += Math.Abs(a[0,2] - 8); cost5 += Math.Abs(a[1,0] - 9); cost5 += Math.Abs(a[1,1] - 5); cost5 += Math.Abs(a[1,2] - 1); cost5 += Math.Abs(a[2,0] - 2); cost5 += Math.Abs(a[2,1] - 7); cost5 += Math.Abs(a[2,2] - 6); minCost = (minCost > cost5 ? cost5 : minCost); cost6 += Math.Abs(a[0,0] - 6); cost6 += Math.Abs(a[0,1] - 7); cost6 += Math.Abs(a[0,2] - 2); cost6 += Math.Abs(a[1,0] - 1); cost6 += Math.Abs(a[1,1] - 5); cost6 += Math.Abs(a[1,2] - 9); cost6 += Math.Abs(a[2,0] - 8); cost6 += Math.Abs(a[2,1] - 3); cost6 += Math.Abs(a[2,2] - 4); minCost = (minCost > cost6 ? cost6 : minCost); cost7 += Math.Abs(a[0,0] - 2); cost7 += Math.Abs(a[0,1] - 7); cost7 += Math.Abs(a[0,2] - 6); cost7 += Math.Abs(a[1,0] - 9); cost7 += Math.Abs(a[1,1] - 5); cost7 += Math.Abs(a[1,2] - 1); cost7 += Math.Abs(a[2,0] - 4); cost7 += Math.Abs(a[2,1] - 3); cost7 += Math.Abs(a[2,2] - 8); minCost = (minCost > cost7 ? cost7 : minCost); cost8 += Math.Abs(a[0,0] - 2); cost8 += Math.Abs(a[0,1] - 9); cost8 += Math.Abs(a[0,2] - 4); cost8 += Math.Abs(a[1,0] - 7); cost8 += Math.Abs(a[1,1] - 5); cost8 += Math.Abs(a[1,2] - 3); cost8 += Math.Abs(a[2,0] - 6); cost8 += Math.Abs(a[2,1] - 1); cost8 += Math.Abs(a[2,2] - 8); minCost = (minCost > cost8 ? cost8 : minCost); Console.WriteLine(minCost); } }