坏掉的项链Broken Necklace

难度:★

Code:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
using namespace std;
//Mystery_Sky
//
#define M 1000
string s;
int n, ans, flag, maxx, sum;
int l[M], r[M];
bool it[M]; int main() {
scanf("%d", &n);
cin >> s;
for(int i = 0; i < n; i++) {
sum = 2;
int iter_1, iter_2;
char ster_1, ster_2;
iter_1 = i-1, iter_2 = i+2;
if(iter_1 < 0) iter_1 = n;
if(iter_2 >= n) iter_2 -= n;
ster_1 = s[i], ster_2 = s[i+1];
while(!ans) {
// printf("iter_1=%d\n", iter_1);
if(s[iter_1] == s[iter_1+1]) sum++;
else if(s[iter_1] == 'w') sum++;
else if(s[iter_1] == ster_1) sum++;
else if(ster_1 == 'w') {
sum++;
ster_1 = s[iter_1];
}
else break;
iter_1--;
if(iter_1 < 0) iter_1 = n-1;
if(iter_1 == iter_2-1) ans = n;
}
while(!ans) {
if(s[iter_2] == s[iter_2-1]) sum++;
else if(s[iter_2] == 'w') sum++;
else if(s[iter_2] == ster_2) sum++;
else if(ster_2 == 'w') {
sum++;
ster_2 = s[iter_2];
}
else break;
iter_2++;
if(iter_2 >= n) iter_2 = 0;
}
if(ans) break;
maxx = max(sum, maxx);
}
if(ans == n) printf("%d\n", ans);
else if(maxx > n) printf("%d\n", n);
else printf("%d\n", maxx);
return 0; }

洛谷 P1203 [USACO1.1]坏掉的项链Broken Necklace的更多相关文章

  1. 洛谷P1203 [USACO1.1]坏掉的项链Broken Necklace

    题目描述 你有一条由N个红色的,白色的,或蓝色的珠子组成的项链(3<=N<=350),珠子是随意安排的. 这里是 n=29 的二个例子: 第一和第二个珠子在图片中已经被作记号. 图片 A ...

  2. P1203 [USACO1.1]坏掉的项链Broken Necklace

    P1203 [USACO1.1]坏掉的项链Broken Necklace不错的断环为链的模拟题,开成三倍,有很多细节要考虑,比如总长度要<=n,开头第一个是w等等. #include<bi ...

  3. 题解 P1203 【[USACO1.1]坏掉的项链Broken Necklace】

    [USACO1.1]坏掉的项链Broken Necklace 22892 破碎的项链 方法一:很容易想到枚举断点,再分别两头找,但是要注意很多细节 #include<iostream> # ...

  4. AC日记——[USACO1.1]坏掉的项链Broken Necklace 洛谷 P1203

    题目描述 你有一条由N个红色的,白色的,或蓝色的珠子组成的项链(3<=N<=350),珠子是随意安排的. 这里是 n=29 的二个例子: 第一和第二个珠子在图片中已经被作记号. 图片 A ...

  5. [USACO1.1]坏掉的项链Broken Necklace

    题目描述 你有一条由N个红色的,白色的,或蓝色的珠子组成的项链(3<=N<=350),珠子是随意安排的. 这里是 n=29 的二个例子: 第一和第二个珠子在图片中已经被作记号. 图片 A ...

  6. 【P1203】 【USACO1.1】坏掉的项链Broken Necklace

    P1203 [USACO1.1]坏掉的项链Broken Necklace 题目描述 你有一条由N个红色的,白色的,或蓝色的珠子组成的项链(3<=N<=350),珠子是随意安排的. 这里是 ...

  7. [USACO1.1.4]坏掉的项链Broken Necklace

    P1203 [USACO1.1]坏掉的项链Broken Necklace 标签 搜索/枚举 USACO 难度 普及- 题目描述 你有一条由N个红色的,白色的,或蓝色的珠子组成的项链(3<=N&l ...

  8. USACO Training Section 1.1 坏掉的项链Broken Necklace

    题目描述 你有一条由N个红色的,白色的,或蓝色的珠子组成的项链(3<=N<=350),珠子是随意安排的. 这里是 n=29 的二个例子: 第一和第二个珠子在图片中已经被作记号. 图片 A ...

  9. 洛谷P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib 使用四种算法

    洛谷P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib 水题一道…… 题目描述 农民约翰的母牛总是产生最好的肋骨.你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们. ...

随机推荐

  1. BZOJ3772:精神污染

    浅谈主席树:https://www.cnblogs.com/AKMer/p/9956734.html 题目传送门:https://www.lydsy.com/JudgeOnline/problem.p ...

  2. websocket之二:WebSocket编程入门

    一.WebSocket客户端 websocket允许通过JavaScript建立与远程服务器的连接,从而实现客户端与服务器间双向的通信.在websocket中有两个方法: 1.send() 向远程服务 ...

  3. 系统启动挂载根文件系统时Kernel panic

    转自:http://qiuye.iteye.com/blog/543595 这类问题很常见,先总体介绍一下解决思路. 能出现让人激动的的控制台,那么系统移植已经接近完成:但是不少人在最后一步出现问题. ...

  4. Eclipse+Maven

    http://www.cnblogs.com/alunchen/p/5632497.html

  5. Windows平台Python编程必会模块之pywin32

    在Windows平台上,从原来使用C/C++编写原生EXE程序,到使用Python编写一些常用脚本程序,成熟的模块的使用使得编程效率大大提高了. 不过,python模块虽多,也不可能满足开发者的所有需 ...

  6. Newtonsoft.Json null值不序列化

    如果对当前序列化的实体全部生效的话使用如下: var jSetting = new JsonSerializerSettings {NullValueHandling = NullValueHandl ...

  7. ES5.X相关API和技巧汇总

    https://blog.csdn.net/laoyang360/article/details/77412668

  8. linux系统下file使用的magic文件格式说明

    magic 本手册是file命令所使用的magic文件的格式说明文档,版本是5.04. file命令用于识别文件类型,其他检测,检测文件内容中是否符合 'magic模式',也就是规则. /usr/sh ...

  9. cf808D(xjb)

    题目链接:http://codeforces.com/problemset/problem/808/D 题意:问能不能通过交换不超过两个元素的位置使得原数组变成能分成前,后和相等的连续两部分: 注意这 ...

  10. PJzhang:安全小课堂-安全软件为什么很重要,看这里!

    猫宁!!! 参考链接: http://www.360.cn/webzhuanti/mianyigongju.html https://www.freebuf.com/fevents/204100.ht ...