题号:NC244669
时间限制:C/C++/Rust/Pascal 3秒,其他语言6秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
最近一款名为羊了个羊的小游戏很火,热爱玩原神的你根据羊了个羊开发了一款名为原了个原的卡牌类游戏,游戏设定如下。
牌有k种颜色,有7堆由上到下放置的牌,每堆牌都有n张,你有一个大小为7的初始为空的卡槽。
你每次操作可以从任意一堆牌的最上端取走一张牌,放入卡槽之中,如果此时卡槽之中有三张颜色相同的牌,你需要立刻将他们移出游戏,并获得大小为移除这三张牌后卡槽中剩下的牌的颜色的数量的分数。
当卡槽中没有三张颜色相同的牌时,你不能将卡牌从卡槽中移出游戏。
当卡槽之中有7张牌且无法被移出游戏时或者牌堆中所有的牌都被取走时,游戏结束。
请问你最多能获得多少分数?
输入描述:
第一行输入三个正整数k,n,分别表示牌的颜色数和每堆牌的数量。
之后的7行,每行n个正整数,其中第i行的第j个正整数cij表示第i个牌堆从上到下第j张牌的颜色。
1 <= k,n <= 8
输出描述:
输出一个整数,表示最多能获得的分数。
示例1
输入
复制
2 3
1 1 2
1 1 1
1 1 2
2 1 2
1 1 2
2 2 1
1 1 2
示例2
输入
复制
1 8
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1