#L0453. 棋盘翻转取最大值
棋盘翻转取最大值
题目描述
有一个 行 列的棋盘,每个格子中放有一枚硬币,硬币正面朝上(记为 )或反面朝上(记为 )。
每枚硬币的价值定义为:与其上下左右相邻的硬币中,与它正反面相同的硬币数的平方。即若一枚硬币有 个相邻硬币与它同面,则它的价值为 。
你可以进行任意次操作,每次操作选择一整行,将该行所有硬币翻转( 变 , 变 )。
请计算所有硬币价值之和的最大可能值。
输入格式
第一行两个正整数 ,用空格分隔。
接下来 行,每行包含 个字符( 或 ),表示棋盘初始状态。
输出格式
输出一行一个整数,表示所有硬币价值之和的最大可能值。
样例
4 4
1010
1111
1011
110068
提示
评测用例规模与约定
- 对于 的评测用例,;
- 对于所有评测用例,。
难度
普及+/提高-
通过率
—
尝试
0
已通过
0
- ID
- 1181
- 类型
- 传统题
- Time Limit
- 1000ms
- Memory Limit
- 512MiB
- 上传者