首页 > 其他分享 >Invertible Bracket Sequences

Invertible Bracket Sequences

时间:2024-07-31 18:50:17浏览次数:8  
标签:loc 题目 Invertible int 题解 mid Bracket Sequences size

看到这种类似的括号匹配的题目,一定要想到卡特兰数的证明过程呀(将(看成\(1\),)看成\(-1\),于是不难得出充分条件,虽然这道题目并不是直接这么给的,但是我看没人证明)

剩下的看官方题解就好了,之所以可以删掉官方题解所说的\(x\),是因为接下来如果\(x\)是\(r_1\)的答案候选项的话,由于\(r_1>r\),那么肯定会去判断是否有\(x≥bal_r-x\),而这显然不用判断,肯定不成立,所以可以删除\(x\)

我的赛时做法大致一样,但是我是先二分找到条件一的边界,再利用“蒲公英”这道题目的二分思路去找有多少个数满足条件二

代码见下

int getnum(int x,int l,int r)
{
	if(loc[x][loc[x].size()-1]<l||loc[x][0]>r) return 0;//这个边界条件判断很重要
	int L,R,mid,L1,R1;
	L=0,R=loc[x].size()-1;
	while(L<=R)
	{
		mid=L+R>>1;
		if(loc[x][mid]>=l)
		{
			L1=mid;
			R=mid-1;
		}
		else L=mid+1;
	}
	L=0,R=loc[x].size()-1;
	while(L<=R)
	{
		mid=L+R>>1;
		if(loc[x][mid]<=r)
		{
			R1=mid;
			L=mid+1;
		}
		else R=mid-1;
	}
	return R1-L1+1;
}

标签:loc,题目,Invertible,int,题解,mid,Bracket,Sequences,size
From: https://www.cnblogs.com/dingxingdi/p/18335238

相关文章

  • Bracket Sequences II
    原题链接题解一个合法的括号序列,满足长度为偶数前缀和处处不小于0左括号等于右括号数量code#include<bits/stdc++.h>#definelllonglong#definelowbit(x)((x)&(-x))usingnamespacestd;constllinf=1e18;constllmod=1e9+7;llqpow(lla,lln){......
  • P3131 [USACO16JAN] Subsequences Summing to Sevens S
    传送锚点:[USACO16JAN]SubsequencesSummingtoSevensS-洛谷题目描述FarmerJohn's\(N\)cowsarestandinginarow,astheyhaveatendencytodofromtimetotime.EachcowislabeledwithadistinctintegerIDnumbersoFJcantellthemapart.FJwould......
  • [ABC362E]Count Arithmetic Subsequences
    题目大意给定\(N\)个数字的序列,每个元素为\(a[i]\),问长度为i的数字序列是由多少个子序列构成的?定义数字序列:如果\(a[i]-a[j]==a[k]-a[i]\),则\(a[j],a[i],a[k]\)构成数字序列数据范围\(N\leq80,a_i\leq10^9\)题解一看到这个数据范围,就和\(a[i]\)没关系,肯定是和\(N\)有......
  • 题解:CodeForces 843A Sorting by Subsequences[模拟/排序]
    CodeForces843AA.SortingbySubsequencestimelimitpertest:1secondmemorylimitpertest:256megabytesinputstandardinputoutputstandardoutputYouaregivenasequence\(a_1, a_2, ..., a_n\)consistingofdifferentintegers.Itisrequiredtos......
  • Atcoder ABC091D Two Sequences
    首先根据\(\operatorname{xor}\),就想到拆成二进制的\(a_{i,w},b_{i,w}\)来处理。类似竖式加法,考虑把得到的结果\(c_{w}\)分为\(a_{i,w}+b_{j,w}+x\),其中\(x\)就是上一位的进位。进一步的,发现对于总的\(c_{w}\),\(a_{i,w},b_{j,w}\)肯定都在这个位置加了\(......
  • D. Invertible Bracket Sequences
    原题链接题解把(当作+1,)当作-1,我们可以得到这样的图像易得要保证翻完之后整体的合法性,\([l,r]\)内的左右括号数量要相等,在图上看就是\(pre[l-1]==pre[r]\)相等一个合法括号,要保证所有的\(pre[i]\)不小于0,因此反过来之后,最小的\(pre[i]\)等于\(pre[r]-\max(pre[k]),k\in......
  • Efficiently Modeling Long Sequences with Structured State Spaces
    目录概符号说明S4代码GuA.,GoelK.andReC.Efficientlymodelinglongsequenceswithstructuredstatespaces.NeurIPS,2022.概Mamba系列第三作.符号说明\(u(t)\in\mathbb{R}\),输入信号;\(x(t)\in\mathbb{R}^N\),中间状态;\(y(t)\in\mathbb{R}\),输......
  • jQWidgets 19.2.0 Visualize Sequences
    jQWidgets19.2.0VisualizeSequencesjQWidgets19.2.0addsanewcomponentforvisualizingchronologicaldatawithsupportforinteractivescrolling,customizablestyles,andrichcontent.jQWidgetsisacomprehensiveJavaScriptUIframeworkofferi......
  • ABC 312D题 Count Bracket Sequences
    题意给定一个非空的字符串,其由(,),?三个字符构成,其中?可以被(或者)给替换掉,求替换后的字符串是符合括号匹配的情况下的方案数。最后答案对mod=998244353取模思路应该算是一个板题,一开始的想法是往卡特兰数的方向思考,但是可能是我太水了没想出来,然后一想到卡特兰数的dp求法,就......
  • D. Invertible Bracket Sequences
    D.InvertibleBracketSequencesAregularbracketsequenceisabracketsequencethatcanbetransformedintoacorrectarithmeticexpressionbyinsertingcharacters'1'and'+'betweentheoriginalcharactersofthesequence.Forexam......