USACO 1.2 Broken Necklace
断点是白色的情况在做题的时候完全没有想到呢...
看到了数据才发现这个问题$qwq$
/*
ID:Starry21
LANG:C++
TASK:beads
*/
#include<iostream>
#include<string>
#include<cstdio>
#include<cstring>
#include<map>
using namespace std;
#define N 355
int n,ans;
char s[N*];
int l,r;
int f2(char c)
{
int res=;
while()
{
if(s[l+]==c||s[l+]=='w')
l++,res++;
else break;
if(l+==r) break;
}
return res;
}
int f1()
{
int res1=,res2=;
int ll=l;char c='b';
while()
{
if(s[l+]==c||s[l+]=='w')
l++,res1++;
else break;
if(l+==r) break;
}
c='r';
while()
{
if(s[ll+]==c||s[ll+]=='w')
ll++,res2++;
else break;
if(ll+==r) break;
}
if(res2>res1) l=ll;
return max(res1,res2);
}
int f4(char c)
{
int res=;
while()
{
if(s[r-]==c||s[r-]=='w')
r--,res++;
else break;
if(l+==r) break;
}
return res;
}
int f3()
{
int res1=,res2=;
int rr=r;char c='b';
while()
{
if(s[r-]==c||s[r-]=='w')
r--,res1++;
else break;
if(l+==r) break;
}
c='r';
while()
{
if(s[rr-]==c||s[rr-]=='w')
rr--,res2++;
else break;
if(l+==rr) break;
}
if(res2>res1) r=rr;
return max(res1,res2);
}
int main()
{
//freopen("beads.in","r",stdin);
//freopen("beads.out","w",stdout);
scanf("%d",&n);
scanf("%s",s+);
for(int i=;i<=n;i++)
s[i+n]=s[i];
for(int i=;i<=n;i++)
{
l=i,r=i+n-;
int cnt1=,cnt2=;
char c=s[l];
if(c!='w') cnt1+=f2(c);
else cnt1+=f1();
if(l+==r)
{
ans=max(ans,cnt1+/*还要加上端点r*/);
continue;
}
//----
c=s[r];
if(c!='w') cnt1+=f4(c);
else cnt1+=f3();
ans=max(ans,cnt1+cnt2);
}
printf("%d\n",ans);
return ;
}
/*
77
rwrwrwrwrwrwrwrwrwrwrwrwbwrwbwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwr
*/
USACO 1.2 Broken Necklace的更多相关文章
- USACO section1.1 Broken Necklace
/* ID: vincent63 LANG: C TASK: beads */ #include <stdio.h> #include<stdlib.h> #include&l ...
- USACO Section1.1 Broken Necklace 解题报告
beads解题报告 —— icedream61 博客园(转载请注明出处)---------------------------------------------------------------- ...
- USACO Section1.1PROB Broken Necklace
有点麻烦的一道模拟(官方题解好像有复杂度为$O(n)$DP的姿势?,感觉好烦,以后再细看~ 在一些细节上调试了很久很久,囧RZ /* ID: jusonal1 PROG: beads LANG: C+ ...
- [USACO1.1.4]坏掉的项链Broken Necklace
P1203 [USACO1.1]坏掉的项链Broken Necklace 标签 搜索/枚举 USACO 难度 普及- 题目描述 你有一条由N个红色的,白色的,或蓝色的珠子组成的项链(3<=N&l ...
- 【P1203】 【USACO1.1】坏掉的项链Broken Necklace
P1203 [USACO1.1]坏掉的项链Broken Necklace 题目描述 你有一条由N个红色的,白色的,或蓝色的珠子组成的项链(3<=N<=350),珠子是随意安排的. 这里是 ...
- P1203 [USACO1.1]坏掉的项链Broken Necklace
P1203 [USACO1.1]坏掉的项链Broken Necklace不错的断环为链的模拟题,开成三倍,有很多细节要考虑,比如总长度要<=n,开头第一个是w等等. #include<bi ...
- 洛谷 P1203 [USACO1.1]坏掉的项链Broken Necklace
坏掉的项链Broken Necklace 难度:★ Code: #include <iostream> #include <cstdio> #include <cstri ...
- 题解 P1203 【[USACO1.1]坏掉的项链Broken Necklace】
[USACO1.1]坏掉的项链Broken Necklace 22892 破碎的项链 方法一:很容易想到枚举断点,再分别两头找,但是要注意很多细节 #include<iostream> # ...
- P1203 [USACO1.1]Broken Necklace(模拟-枚举)
P1203 [USACO1.1]坏掉的项链Broken Necklace 题目描述 你有一条由N个红色的,白色的,或蓝色的珠子组成的项链(3<=N<=350),珠子是随意安排的. 这里是 ...
随机推荐
- Xftp6 和 Xshell 6 下载与安装使用
官网地址:https://www.netsarang.com/zh/all-downloads/ 然后进行安装吧,基本没有什么配置. 打开 xftp 连接 Linux,进行文件操作. 然后 名称:随意 ...
- config文件的实现
https://www.cnblogs.com/jiayouwyhit/p/3836510.html //Config.h #pragma once #include <string> # ...
- Kafka集群---分布式消息系统
概念: kafka是一种消息中间件 作用: 解耦.冗余.提高扩展性.缓冲 保证顺序.灵活.削峰填谷 异步通信 kafla角色 producer: 生产者,负责发布消息 consumer: 消费者,负责 ...
- 泛目录/泛目录程序/泛目录解析/莲花泛目录解析/寄生虫程序/黑帽SEO
莲花泛目录程序强大之处: 蜘蛛抓取繁殖新页面,对搜索引擎更加友好采用PHP7语言开发,代码执行率高.蜘蛛抓取目录页面触发繁殖新页面,诱导搜索引擎爬虫爬行更多目录页面, 并且在本地生成缓存页面,搜索引擎 ...
- Educational Codeforces Round 53 E. Segment Sum(数位DP)
Educational Codeforces Round 53 E. Segment Sum 题意: 问[L,R]区间内有多少个数满足:其由不超过k种数字构成. 思路: 数位DP裸题,也比较好想.由于 ...
- Linux 网络通信命令之 netstat
定义 Linux netstat命令用于显示网络状态. 利用netstat指令可让你得知整个Linux系统的网络情况. 语法 netstat [-acCeFghilMnNoprstuvVwx][-A& ...
- js off动画事件
每个假期都过得如此快10月一是2017年最后一个假期.不由感叹时间过得真快.我已上个月离职,一直在家休整,今天得空吧前几天学习的知识真理一下. 今天主要整理关于,offset系列的,动画是咱们全都工作 ...
- VMware配置NAT方式下的静态ip
一.VMware上NAT模式工作原理 原理图如下: 说明: 1.虚拟主机与本地主机通信时,直接通过虚拟交换机访问(不管是虚拟主机的ip是静态ip还是动态分配的ip) 2.虚拟主机与外网通信时,虚拟主机 ...
- Install chocolatey
Requirements Windows 7+ / Windows Server 2003+ PowerShell v2+ .NET Framework 4+ (the installation wi ...
- 性能优化 | JVM与性能优化知识点综合整理
JVM JVM是java的核心和基础,在java编译器和os平台之间的虚拟处理器.它是一种利用软件方法实现的抽象的计算机基于下层的操作系统和硬件平台,可以在上面执行java的字节码程序. java编译 ...