Broken Necklace破碎的项链
2011-09-02 22:18
405 查看
Broken Necklace破碎的项链
你有一条由 N 个红色的,白色的,或蓝色的珠子组成的项链(3<=N<=350),珠子是随意安排的. 这里是 n=29 的二个例子:r 代表 红色的珠子
b 代表 蓝色的珠子
w 代表 白色的珠子
第一和第二个珠子在图片中已经被作记号.
图片 A 中的项链可以用下面的字符串表示:
brbrrrbbbrrrrrbrrbbrbbbbrrrrb .
假如你要在一些点打破项链,展开成一条直线,然后从一端开始收集同颜色的珠子直到你遇到一个不同的颜色珠子,在另一端做同样的事.(颜色可能与在这之前收集的不同) 确定应该在哪里打破项链来收集到最大多数的数目的子. Example 举例来说,在图片 A 中的项链,可以收集到 8 个珠子,
在珠子 9 和珠子 10 或珠子 24 和珠子 25 之间打断项链. 在一些项链中,包括白色的珠子如图片 B 所示. 当收集珠子的时候,一个被遇到的白色珠子可以被当做红色也可以被当做蓝色. 表现项链的字符串将会包括三符号 r , b 和 w . 写一个程序来确定从一条被供应的项链最大可以被收集珠子数目.
PROGRAM NAME: beads
INPUT FORMAT
第 1 行: N, 珠子的数目
第 2 行: 一串度为 N 的字符串, 每个字符是 r , b 或 w.
SAMPLE INPUT (file beads.in)
29
wwwbbrwrbrbrrbrbrwrwwrbwrwrrb
OUTPUT FORMAT
单独的一行包含从被供应的项链可以被收集的珠子数目的最大值.
SAMPLE OUTPUT (file beads.out)
11
========================
化成2倍长度...
=============
{ ID:jie19952 PROG:beads LANG:PASCAL } var n:longint; bead:array[1..700]of char; procedure init; begin assign(input,'beads.in'); assign(output,'beads.out'); reset(input); rewrite(output); end; procedure terminate; begin close(input); close(output); halt; end; procedure main; var ans:longint; l,r:longint; l_c,r_c:char; i,j,k:longint; begin readln(n); for i:=1 to n do begin read(bead[i]); bead[i+n]:=bead[i]; end; ans:=0; for i:=1 to n do begin l:=0; r:=0; l_c:='w'; r_c:='w'; for j:=i-1 downto 1 do begin if bead[j]='w' then inc(l) else begin if (l_c='w')or(l_c=bead[j]) then begin l_c:=bead[j]; inc(l); end else begin break; end; end; end; k:=i-j+1; for j:=i to i+n-k do begin if bead[j]='w' then inc(r) else begin if (r_c='w')or(r_c=bead[j]) then begin r_c:=bead[j]; inc(r); end else begin break; end; end; end; if l+r>ans then ans:=l+r; end; writeln(ans); end; begin init; main; terminate; end.
相关文章推荐
- 一大堆的福利之【USACO题库】Broken Necklace破碎的项链
- 【USACO题库】1.1.4 Broken Necklace破碎的项链
- USACO1.1.4 Broken Necklace 破碎的项链
- 【USACO题库】1.1.4 Broken Necklace破碎的项链
- USACO1.1.4 Broken Necklace(破碎的项链)
- Broken Necklace-----破碎的项链----USACO---C1S1
- 【USACO题库】1.1.4 Broken Necklace破碎的项链
- Usaco 1.1.4 破碎的项链(Broken Necklace)
- usaco1.1.4 Broken Necklace破碎的项链
- 【USACO1.1_4】★Broken Necklace 破碎的项链
- 【P1203】 【USACO1.1】坏掉的项链Broken Necklace
- 【搜索】洛谷 P1203 [USACO1.1]坏掉的项链Broken Necklace
- 洛谷 P1203 [USACO1.1]坏掉的项链Broken Necklace
- AC日记——[USACO1.1]坏掉的项链Broken Necklace 洛谷 P1203
- USACO——Broken Necklace 坏掉的项链
- [USACO1.1.4]坏掉的项链Broken Necklace
- [USACO1.1]坏掉的项链Broken Necklace
- P1203 [USACO1.1]坏掉的项链Broken Necklace
- P1203 [USACO1.1]坏掉的项链Broken Necklace
- 洛谷 P1203 [USACO1.1]坏掉的项链Broken Necklace