#include #include #include #include #include using namespace std; int magic1[] = {8,1,6,3,5,7,4,9,2}; int magic2[] = {6,1,8,7,5,3,2,9,4}; int magic3[] = {4,9,2,3,5,7,8,1,6}; int magic4[] = {2,9,4,7,5,3,6,1,8}; int magic5[] = {8,3,4,1,5,9,6,7,2}; int magic6[] = {4,3,8,9,5,1,2,7,6}; int magic7[] = {6,7,2,1,5,9,8,3,4}; int magic8[] = {2,7,6,9,5,1,4,3,8}; int cost(int a[],int b[]) { int result = 0; for(int i=0;i<9;i++) { result += abs(a[i]-b[i]); } return result; } int main() { /* Enter your code here. Read input from STDIN. Print output to STDOUT */ int array[9]; for(int i=0;i<9;i++) { cin >> array[i]; } int c1 = cost(array,magic1); int c2 = cost(array,magic2); int c3 = cost(array,magic3); int c4 = cost(array,magic4); int c5 = cost(array,magic5); int c6 = cost(array,magic6); int c7 = cost(array,magic7); int c8 = cost(array,magic8); int costs[8] = {c1,c2,c3,c4,c5,c6,c7,c8}; int result = *min_element(costs,costs+8); cout << result; return 0; }