/ Vijos / 题库 /

项链问题

项链问题

时间限制:1秒  内存限制:256M


【题目描述】

  你有一条由 \(N\) 个红色的、白色的、或蓝色的珠子组成的项链,珠子是随意安排的。下面是 \(N=29\) 的两个项链:其中"r"代表 红色的珠子,"b"代表蓝色的珠子,"w"代表白色的珠子,项链中的第一和第二个珠子已经被作记号。比如图片 A 中的项链可以表示为:brbrrrbbbrrrrrbrrbbrbbbbrrrrb。
说明
   假如你要在一些点打破项链,展开成一条直线,然后从一端开始收集同颜色的珠子直到你遇到一个不同的颜色珠子,在另一端做同样的事(颜色可能与在这之前收集的不同)。 确定应该在哪里打破项链来收集到最大数目的珠子。例如,在图片 A 中的项链中,在珠子 9 和珠子 10 或珠子 24 和珠子 25 之间打断项链可以收集到8个珠子。在一些项链中还包括白色的珠子(如图片B)所示。当收集珠子的时候,一个被遇到的白色珠子可以被当做红色也可以被当做蓝色。写一个程序来确定从一条被给出的项链可以收集到的珠子最大数目。

【输入格式】

  第 1 行: 一个整数\(N\),表示珠子的数目
  第 2 行: 一串长度为 \(N\) 的字符串, 每个字符是 r , b 或 w。

【输出格式】

  单独的一行包含从被供应的项。

【输入输出样例1】

 Input

29
wwwbbrwrbrbrrbrbrwrwwrbwrwrrb

 Output

11

【数据限制】

  对于 \(100\%\) 的数据,\(3≤N≤350\)。

【来源】

  Mr.he

信息

ID
2066
难度
(无)
分类
动态规划 | 模拟 点击显示
标签
递交数
0
已通过
0
通过率
?
被复制
2
上传者