首页 > 其他分享 >#结论#CF1776G Another Wine Tasting Event

#结论#CF1776G Another Wine Tasting Event

时间:2023-10-23 14:59:42浏览次数:46  
标签:CF1776G Tasting int 字母 个数 Another ans

题目

给定一个长度为 \(2n-1\) 的字符串,问一组使得 \(n\) 个长度不小于 \(n\) 的区间中字母W的个数相等的字母W的个数


分析

首先结论就是 \(\max_{i=1}^n\{cW[i\dots i+n-1]\}\) 一定是合法解

以这组解为基准,左右端点如果向外扩展那么个数一定会更多或者不变,

而此时由于当前字母个数最大,那么将端点移动时仍能保证长度不小于 \(n\)


代码

#include <cstdio>
using namespace std;
const int N=2000011;
int n,s[N],ans; char str[N];
int main(){
	scanf("%d%s",&n,str+1);
	for (int i=1;i<2*n;++i){
		s[i]=s[i-1]+(str[i]=='W');
		if (i>=n&&ans<s[i]-s[i-n]) ans=s[i]-s[i-n];
	}
	return !printf("%d",ans);
}

标签:CF1776G,Tasting,int,字母,个数,Another,ans
From: https://www.cnblogs.com/Spare-No-Effort/p/17782384.html

相关文章

  • [920] Copy the font style from one cell in a table of a Word document to another
    TocopythefontstylefromonecellinatableofaWorddocumenttoanothercellusingPythonandthepython-docxlibrary,youcanaccessthefontpropertiesofthesourcecellandapplythemtothetargetcell.Here'showyoucandoit:First,ma......
  • Codeforces Round 893 (Div. 2) C. Yet Another Permutation Problem
    有一个\(gcd\)游戏,按以下步骤进行:选择一个\(n\)的排列\(p_1,p_2,\cdots,p_n\)。对于每个\(i\),\(d_i=gcd(p_i,p_{i\%n+1})\)排列\(p\)的\(score\)为数组\([d_1,d_2,\cdots,d_n]\)中不同数的个数。给一个\(n\),需要构造一个排列\(p\),使得\(sco......
  • [910] Copy a file to another directory with a new name in Python
    TocopyafiletoanotherdirectorywithanewnameinPython,youcanusetheshutillibrary.Here'showyoucandoit:importshutil#Specifythesourcefilepathsource_file='path/to/source/file.txt'#Specifythedestinationdirect......
  • 洛谷 P7830 [CCO2021] Through Another Maze Darkly
    洛谷传送门被联考创出shit了。考虑一种极限情况:每个点指向父亲。那么这种情况我们会顺着欧拉序完整地把整棵树都走一遍。但是初始的时候不一定每个点都指向父亲。发现我们走过\(O(n^2)\)步就能到达上面的极限情况。比较显然,因为每次扩展至少使一个点从不指向父亲变成指向父......
  • Redis可视化工具:Another Redis Desktop Manager
    Redis可视化工具:AnotherRedisDesktopManager一、介绍AnotherRedisDesktopManager(简称:RedisDesktopManager或RDM)是一个Redis数据库的可视化管理工具。它是一个跨平台的桌面应用程序,能够让用户更轻松地与Redis进行交互和管理。更快、更好、更稳定的Redis桌面(GUI)管理客户......
  • 启动MySQL数据库时报错"Another process with pid 3306 is using unix socket file…
    问题描述:启动MySQL数据库时报错"Anotherprocesswithpid3306isusingunixsocketfile……",如下所示:数据库:MySQL5.7.211、异常重现2023-09-23T06:09:48.644151Z0[Note]ServersocketcreatedonIP:'::'.2023-09-23T06:09:48.645247Z0[ERROR]Anotherprocessw......
  • F. Mahmoud and Ehab and yet another xor task 线性基
    Problem-F-Codeforces 题意:给出一个长度为n的数组,然后给出q次询问。对于每次询问,给出一个l和一个x,请你求出在[1,l]这个区间内,有多少个子序列是好的,好的的定义是这个子序列的异或和为x。做法:考虑线性基,先离线处理询问,对其l排序。然后对于l,求该情况下的线性基。然后,我们在......
  • [AGC058D] Yet Another ABC String
    [AGC058D]YetAnotherABCStringAtcoder:[AGC058D]YetAnotherABCString洛谷:[AGC058D]YetAnotherABCStringProblem给出\(a,b,c\),求由\(a\)个A,\(b\)个B,\(c\)个C构成的字符串数量,使得不存在子串ABC,BCA和CAB。\(1\leqa,b,c\leq10^6\)。Solution可能是......
  • 【1342C】Yet Another Counting Problem(数论)
    题目大意:求有多少\(x(1\lel\lex\ler\le10^{18})\)满足\((x\moda)\modb\neq(x\modb)\moda(1\lea,b\le200)\),有\(q(1\leq\le500)\)次询问。设答案为\(f(l,r)\),考虑前缀和\(f(l,r)=f(1,r)-f(1,l-1)\),现在问题在于计算\(f(1,x)(1\lex\le10^{18})\)。我们可以发现规......
  • CF1858C Yet Another Permutation Problem 题解
    思路这个题是一个简单的构造题。竟然比T2简单,也是少见我们可以首先从\(1\)开始不断乘以\(2\),像这样:\(1,2,4,8,16\cdots,2^x\),直到什么时候超过\(n\)就停止。这样相邻两个数字就可以凑出\(1,2,4,6,\cdots,2^{x-1}\),保证两两不同。然后我们可以从\(3\)开始不......