热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

给大佬的奖杯排序(CodeForces1082B)

题目链接:http:codeforces.comproblemsetproblem1082BB.VovaandTrophiestimelimitpertest2secondsmem

题目链接:http://codeforces.com/problemset/problem/1082/B

B. Vova and Trophies
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

Vova has won n">nn trophies in different competitions. Each trophy is either golden or silver. The trophies are arranged in a row.

The beauty of the arrangement is the length of the longest subsegment consisting of golden trophies. Vova wants to swap two trophies (not necessarily adjacent ones) to make the arrangement as beautiful as possible — that means, to maximize the length of the longest such subsegment.

Help Vova! Tell him the maximum possible beauty of the arrangement if he is allowed to do at most one swap.

Input

The first line contains one integer n">nn (2≤n≤105">2n1052≤n≤105) — the number of trophies.

The second line contains n">nn characters, each of them is either G or S. If the i">ii-th character is G, then the i">ii-th trophy is a golden one, otherwise it‘s a silver trophy.

Output

Print the maximum possible length of a subsegment of golden trophies, if Vova is allowed to do at most one swap.

Examples

input
Copy
10
GGGSGGGSGG
output
Copy
7
input
Copy
4
GGGG
output
Copy
4
input
Copy
3
SSS
output
Copy
0
Note

In the first example Vova has to swap trophies with indices 4">44 and 10">1010. Thus he will obtain the sequence "GGGGGGGSGS", the length of the longest subsegment of golden trophies is 7">77.

In the second example Vova can make no swaps at all. The length of the longest subsegment of golden trophies in the sequence is 4">44.

In the third example Vova cannot do anything to make the length of the longest subsegment of golden trophies in the sequence greater than 0">00.

0">大佬的奖杯真是多,而且大佬想要把尽量多的金杯放在一起(手动滑稽).不过他只想最多交换一次。这道题的要求就是让你写个代码把尽量多的的奖杯放在一起

0">但是你只能交换一次或者不交换。

0">题目的大体思维:用两个数保存两个连续区段奖杯的数量。不过只有当两个连续区段相差为1的时候才能够把两个区段加起来+1,否则只能自加1.

0">但是这道题有特殊情况,比如当奖杯排序为GGGGSGGGG的时候,这个时候并不能去交换再去+1,因此只能用另一个数来保存连续奖杯的数量

此后再取一下ans和统计gold奖杯的小值就可以了

附上丑陋的AC代码

技术分享图片技术分享图片
 1 #include 
 2 #include 
 3 using namespace std;
 4 string a;
 5 int main()
 6 {
 7     int n,ans=0,l=0,sumg=0,r=0;
 8     cin>>n;
 9     cin>>a;
10     for(int i=0;i)
11     {
12         if(a[i]==G)
13         {
14             sumg++;
15            r++;
16         }
17         else
18         {
19             l=r;
20            r=0;
21         }
22         ans=max(ans,r+l+1);
23     }
24     ans=min(ans,sumg);
25     printf("%d",ans);
26     return 0;
27 }
View Code

人生第二篇博客。。。。。。。(参考其他人的,因为比赛的时候没有AC这道题)

给大佬的奖杯排序(CodeForces - 1082B)


推荐阅读
  • 本文介绍了如何在 ASP.NET 中设置 Excel 单元格格式为文本,获取多个单元格区域并作为表头,以及进行单元格合并、赋值、格式设置等操作。 ... [详细]
  • LDAP服务器配置与管理
    本文介绍如何通过安装和配置SSSD服务来统一管理用户账户信息,并实现其他系统的登录调用。通过图形化交互界面配置LDAP服务器,确保用户账户信息的集中管理和安全访问。 ... [详细]
  • [转]doc,ppt,xls文件格式转PDF格式http:blog.csdn.netlee353086articledetails7920355确实好用。需要注意的是#import ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 解决 Windows Server 2016 网络连接问题
    本文详细介绍了如何解决 Windows Server 2016 在使用无线网络 (WLAN) 和有线网络 (以太网) 时遇到的连接问题。包括添加必要的功能和安装正确的驱动程序。 ... [详细]
  • 如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了。因为MediaPlayer存在如下缺点:1)延时时间较长,且资源占用率高 ... [详细]
  • 网络爬虫的规范与限制
    本文探讨了网络爬虫引发的问题及其解决方案,重点介绍了Robots协议的作用和使用方法,旨在为网络爬虫的合理使用提供指导。 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 自定义滚动条美化页面内容
    当页面内容超出显示范围时,为了提升用户体验和页面美观,通常会添加滚动条。如果默认的浏览器滚动条无法满足设计需求,我们可以自定义一个符合要求的滚动条。本文将详细介绍自定义滚动条的实现过程。 ... [详细]
  • importpymysql#一、直接连接mysql数据库'''coonpymysql.connect(host'192.168.*.*',u ... [详细]
  • 微软推出Windows Terminal Preview v0.10
    微软近期发布了Windows Terminal Preview v0.10,用户可以在微软商店或GitHub上获取这一更新。该版本在2月份发布的v0.9基础上,新增了鼠标输入和复制Pane等功能。 ... [详细]
  • Framework7:构建跨平台移动应用的高效框架
    Framework7 是一个开源免费的框架,适用于开发混合移动应用(原生与HTML混合)或iOS&Android风格的Web应用。此外,它还可以作为原型开发工具,帮助开发者快速创建应用原型。 ... [详细]
  • 第二十五天接口、多态
    1.java是面向对象的语言。设计模式:接口接口类是从java里衍生出来的,不是python原生支持的主要用于继承里多继承抽象类是python原生支持的主要用于继承里的单继承但是接 ... [详细]
  • 解决Parallels Desktop错误15265的方法
    本文详细介绍了在使用Parallels Desktop时遇到错误15265的多种解决方案,包括检查网络连接、关闭代理服务器和修改主机文件等步骤。 ... [详细]
  • 在使用Eclipse进行调试时,如果遇到未解析的断点(unresolved breakpoint)并显示“未加载符号表,请使用‘file’命令加载目标文件以进行调试”的错误提示,这通常是因为调试器未能正确加载符号表。解决此问题的方法是通过GDB的`file`命令手动加载目标文件,以便调试器能够识别和解析断点。具体操作为在GDB命令行中输入 `(gdb) file `。这一步骤确保了调试环境能够正确访问和解析程序中的符号信息,从而实现有效的调试。 ... [详细]
author-avatar
奶油。
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有