//Problem TaskName #include #include #include #include #include #include #include #include #include using namespace std; int get() { char c; while(c=getchar(),(c<'0'||c>'9')&&(c!='-')); bool flag=(c=='-'); if(flag) c=getchar(); int x=0; while(c>='0'&&c<='9') { x=x*10+c-48; c=getchar(); } return flag?-x:x; } void output(int x) { if(x<0) { putchar('-'); x=-x; } int len=0,data[10]; while(x) { data[len++]=x%10; x/=10; } if(!len) data[len++]=0; while(len--) putchar(data[len]+48); putchar('\n'); } int a[3][3],b[3][3]; bool check() { int mask=0; for(int i=0;i<3;i++) for(int j=0;j<3;j++) { if(b[i][j]<1||b[i][j]>9) return false; mask|=1<<(b[i][j]-1); } return mask==511; } int main() { for(int i=0;i<3;i++) for(int j=0;j<3;j++) a[i][j]=get(); int ans=100; for(int x=1;x<=9;x++) for(int y=1;y<=9;y++) { b[0][0]=x; b[0][2]=y; b[0][1]=15-x-y; b[1][1]=5; b[2][0]=10-b[0][2]; b[2][2]=10-b[0][0]; b[2][1]=15-b[2][0]-b[2][2]; b[1][0]=15-b[0][0]-b[2][0]; b[1][2]=15-b[0][2]-b[2][2]; if(!check()) continue; int sum=0; for(int i=0;i<3;i++) for(int j=0;j<3;j++) sum+=abs(a[i][j]-b[i][j]); ans=min(ans,sum); } output(ans); return 0; }