Flags
TopCoder SRM 792
Time Limit: 1.5s, Memory Limit: 256MiB
Ели има бял лист на квадратчета с N реда и M колони. Докато с едно ухо слушаше учителката по време на поредния скучен час, момичето оцветяваше произволни квадратчета в зелено и червено. По някое време тя видя, че листът ѝ е пълен с български флагове! Ели казва, че е нарисувала "флаг", ако три последователни квадратчета отивайки само надолу и надясно (всяко споделящо страна със следващото) са, съответно, бяло, зелено и червено. Така има четири типа "флаг":
Забележете, че няколко флага могат да споделят клетки. Например, в следната конфигурация има общо шест флага, три от които започват от бялата клетка в горния ляв ъгъл:
Сега Ели се зачуди колко най-много флагове може да получи, ако оцвети някои (потенциално нито една) от останалите бели клетки в зелено и червено? Забележете, че момичето не може да завърта листа или да преоцветява вече оцветени клетки.
|
|
|
|
Забележете, че няколко флага могат да споделят клетки. Например, в следната конфигурация има общо шест флага, три от които започват от бялата клетка в горния ляв ъгъл:
W | G | W | W | R |
G | R | G | R | G |
R | W | G | R | W |
G | G | W | G | R |
Сега Ели се зачуди колко най-много флагове може да получи, ако оцвети някои (потенциално нито една) от останалите бели клетки в зелено и червено? Забележете, че момичето не може да завърта листа или да преоцветява вече оцветени клетки.
Вход
На първия ред на стандартния вход ще бъдат зададени двете цели числа N и M - броя редове и колони на листа. На следващите N реда ще има по един стринг с M символа 'W', 'G', или 'R', задаващи, съответно, бяла, зелена и червена клетка.
Изход
На стандартния изход изведете едно цяло число - максималния брой флагове, които могат да се получат при оцветяване на останалите бели клетки по оптимален начин.
Ограничения
- 1 ≤ N, M ≤ 10
Примерен Вход | Примерен Изход |
---|---|
4 5 WGWWR GRGRG RWGRW GGWGR | 9 |
Можем да оцветим клетката на първи ред, четвърта колона в зелено, получавайки още два флага. Допълнително, оцветявайки клетката на четвърти ред, трета колона в червено губим един от досегашните флагове, но получаваме два нови на негово място.