Trial for Chief
题号:NC244909
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

给你一张N*M的图,每个点有黑色和白色,初始全为白色,每次可以任选一个相同颜色的连通区域染色,求获得给定图形的最少的染色次数。

两个格子之间互相联通,当且仅当它们有一条公共的边。

一个联通快是指块内任意两个格子都可以靠块内的格子直接或间接联通。

输入描述:

第一行两个整数

接下来n行每行m个字符表示目标图形这一位是白色("W")还是黑色("B")。

输出描述:

一个整数,表示最少操作次数。
示例1

输入

复制
3 3
WBW
BWB
WBW

输出

复制
2
示例2

输入

复制
2 3
BBB
BWB

输出

复制
1