#include #include #include #include #include using namespace std; int checkCost(int matrix[3][3], int reference[3][3]){ int cost = 0; for(int i = 0; i < 3; i++){ for(int j = 0; j < 3; j++){ cost += reference[i][j] > matrix[i][j] ? reference[i][j] - matrix[i][j] : matrix[i][j] - reference[i][j]; } } return cost; } int main() { int magic[][3][3] = { {{2, 7, 6}, {9, 5, 1}, {4, 3 ,8}}, {{6, 7, 2}, {1, 5, 9}, {8, 3 ,4}}, {{4, 3, 8}, {9, 5, 1}, {2, 7 ,6}}, {{6, 1, 8}, {7, 5, 3}, {2, 9 ,4}}, {{8, 3, 4}, {1, 5, 9}, {6, 7 ,2}}, {{2, 9, 4}, {7, 5, 3}, {6, 1 ,8}}, {{4, 9, 2}, {3, 5, 7}, {8, 1 ,6}}, {{8, 1, 6}, {3, 5, 7}, {4, 9 ,2}}, }; int matrix[3][3]; int cost = 0; vector counts(10, 0); for(int i = 0; i < 3; i++){ for(int j = 0;j < 3; j++){ cin >> matrix[i][j]; } } int min = 9 * 9; for(int i = 0; i < 8; i++){ int calc = checkCost(matrix, magic[i]); if(calc < min) min = calc; } cout << min << endl; }