果园争锋
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
D. 果园争锋
题目描述
两名果农在一条果园带上竞争。果园带上 棵果树排成一排,每棵树状态为未成熟(标记为 )或成熟(标记为 )。两人轮流行动,果农 先开始。
每回合行动规则:
- 果农 :必须选择两棵相邻且均未成熟的果树(),将其移出果园。
- 果农 :必须选择两棵相邻果树中至少一棵已成熟的果树(、 或 ),将其移出果园。
若某个果农无法按规则行动(包括剩余果树少于 2 棵),则认定该果农败北。
任务:
给定果园初始状态序列 (例如 ""),请计算所有连续果树段(子串)中,果农 在双方最优策略下必胜的片段数量。
输入格式
第一行输入一个整数 代表果树数量。
第二行输入一个长度为 的字符串 代表果树是否成熟。每一个字符都是 或者 。
输出格式
输出一个整数,代表能让果农 获得胜利的连续果树段数量。
样例输入1
10
0010010011
样例输出1
12
样例解释
在样例 里面,以下的果树段能让玩家 获胜。( 代表 ):, , , , , , , , , , , 。
数据范围
- 对于 的数据,。
- 对于 的数据,。
- 对于 的数据,。