يبدأ Taeyang لعبة باستخدام $MN$ حجرًا أبيض وأسود موزعة على شبكة $M\times N$، كما هو موضح أدناه.
لكل حجر $X$، تُسمى الأحجار $4$ المجاورة له مباشرةً من أعلى وأسفل ويسار ويمين جيرانه. يمكن لـ Taeyang اختيار حجر وتغيير لونه. ويتغير أيضًا لون جيرانه الذين كانوا من لونه الأصلي إلى اللون الجديد. تتكرر العملية: جيران الأحجار التي يتغير لونها يتغير لونهم أيضًا إذا كانوا من اللون الأصلي نفسه.
على سبيل المثال، عند تغيير الحجر $A$ في الشكل السابق إلى الأبيض، تصبح الأحجار السوداء التي تشكل الرمز «ㄷ» بيضاء، كما هو موضح أدناه.
بعد ذلك، يؤدي تغيير الحجر $C$ إلى الأبيض إلى الشكل التالي.
ثم نغيّر الحجر $F$ إلى الأبيض وأخيرًا الحجر $E$ إلى الأبيض، فتصبح جميع الأحجار بيضاء. وهكذا استُخدمت أربعة تغييرات لجعل جميع الأحجار بيضاء.
لكن يمكن جعل جميع الأحجار من اللون نفسه بتغييرين فقط. أولًا، يؤدي تغيير الحجر $B$ إلى الأسود إلى الشكل التالي.
بعد ذلك، يمكن تغيير الحجر $A$ إلى الأبيض لجعل الجميع أبيض، أو الحجر $D$ إلى الأسود لجعل الجميع أسود. وهكذا يكفي تغييران لجعل جميع الأحجار من اللون نفسه.
اكتب برنامجًا يحسب أقل عدد من تغييرات اللون لجعل جميع الأحجار من اللون نفسه، عند إعطائه أحجارًا بيضاء وسوداء على شبكة $M\times N$.
الإدخال
يحتوي السطر الأول على عددين صحيحين موجبين $M$ و$N$ يصفان شبكة $M\times N$، تفصل بينهما مسافة. كلاهما بين $2$ و$100$ شاملًا الحدين. يحتوي كل سطر من الأسطر $M$ التالية على $N$ قيم تفصل بينها مسافات تصف صفًا من الشبكة: $0$ لحجر أبيض و$1$ لحجر أسود.
الإخراج
اطبع في السطر الأول أقل عدد من تغييرات اللون لجعل جميع الأحجار من اللون نفسه.
أمثلة
الإدخال 1
5 6 1 1 0 1 0 0 1 0 0 1 1 1 1 1 0 1 1 1 0 0 0 0 0 0 1 1 1 0 1 1
الإخراج 1
2