Bzoj2434 阿狸的打字机

NOI2011 阿狸的打字机(BZOJ2434) 题解 Link 原题链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2434       Description 阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机。打字机上只有28个按键,分别印有26个小写英文字母和'B'、'P'两个字母。 经阿狸研究发现,这个打字机是这样工作的: 输入小写字母,打字机的一个凹槽中会 阅读详情

纪念一次AC,水一篇blog

又是喜闻乐见的广义SAM题辣
题意:给一个trie,每次问询一个串在另一个串出现的次数
思路:建立广义SAM,离线所有询问,每次讲一个主串在fail树上的节点+1,处理询问就用fenwick维护子树和
这里注意,
1.广义SAM要用bfs建
2.每次从一个主串到下一个时,不要整个都减掉而是要在LCA处会和,这样复杂度就是对的
代码有点长但是很好打

#include<stdio.h>
#include<string.h>
#include<algorithm>
#define N 200010
using namespace std;
struct fenwick{
	int w[N],n,v;
	inline void init(int c){ n=c; }
	inline void add(int x){ for(;x<=n;x+=x&-x) ++w[x]; }
	inline void dec(int x){ for(;x<=n;x+=x&-x) --w[x]; }
	inline int sum(int x){ for(v=0;x;x&=x-1) v+=w[x]; return v; }
} w;
int h[N],cnt=1,d[N],l[N],r[N],clk,f[N];
int s[N][26],lst[N],v[N],n,m,tot=1,nc,q[N],A[N];
struct edge{ int v,nt; } G[N<<1];
namespace SAM{
	int s[N][26],mx[N],f[N],cnt=1;
	inline int extend(int p,int c){
		int np=++cnt,q,nq;
		mx[np]=mx[p]+1;
		for(;p&&!s[p][c];p=f[p]) s[p][c]=np;
		if(!p){ f[np]=1; return np; }
		q=s[p][c];
		if(mx[q]==mx[p]+1) f[np]=q;
		else{
			nq=++cnt;
			mx[nq]=mx[p]+1;
			f[nq]=f[q]; f[q]=f[np]=nq;
			memcpy(s[nq],s[q],26<<2);
			for(;p&&s[p][c]==q;p=f[p]) s[p][c]=nq;
		}
		return np;
	}
	inline void dfs(int x){
		l[x]=++clk;
		for(int i=h[x];i;i=G[i].nt) dfs(G[i].v);
		r[x]=clk;
	}
	inline void buildTree(){
		for(int i=2;i<=cnt;++i){
			G[++::cnt]=(edge){i,h[f[i]]}; h[f[i]]=::cnt;
		}
		dfs(1);
	}
}
char S[N],*T;
struct V{ int x,y,r; } g[N];
inline bool cv(V a,V b){ return a.y<b.y; }
inline void Btrie(int x){
	if(!*T) return;
	if(*T=='B'){ ++T; return; } else
	if(*T=='P'){ v[++nc]=x; ++T; Btrie(x); }
	else{
		if(!s[x][*T-='a']) s[x][*T]=++tot;
		f[tot]=x; d[tot]=d[x]+1; Btrie(s[x][*T++]); Btrie(x);
	}
}
int main(){
	scanf("%s%d",S,&m);
	T=S; Btrie(1);
	int l=1,r=0; lst[q[++r]=1]=1;
	for(int x;l<=r;++l){
		x=q[l];
		for(int i=0;i<26;++i)
			if(s[x][i]){
				lst[s[x][i]]=SAM::extend(lst[x],i);
				q[++r]=s[x][i];
			}
	}
	SAM::buildTree(); w.init(SAM::cnt);
	for(int i=1;i<=m;++i) scanf("%d%d",&g[i].x,&g[i].y),g[i].r=i;
	sort(g+1,g+1+m,cv); v[0]=1;
	for(int x,y=1,i=1,j=1;i<=m;){
		while(j<=m && g[j].y==g[i].y) ++j;
		x=v[g[i].y]; y=v[g[i-1].y];
		while(d[x]>d[y]){
			w.add(::l[lst[x]]); x=f[x];
		}
		while(d[y]>d[x]){
			w.dec(::l[lst[y]]); y=f[y];
		}
		while(x!=y){
			w.add(::l[lst[x]]); x=f[x];
			w.dec(::l[lst[y]]); y=f[y];
		}
		for(;i<j;++i)
			A[g[i].r]=w.sum(::r[lst[v[g[i].x]]])-w.sum(::l[lst[v[g[i].x]]]-1);
	}
	for(int i=1;i<=m;++i) printf("%d\n",A[i]);
}

放个LaTeXLaTeXLaTeX版本的代码恶心人~
#include&lt;stdio.h&gt;\#include&lt;stdio.h&gt;#include<stdio.h>
#include&lt;string.h&gt;\#include&lt;string.h&gt;#include<string.h>
#include&lt;algorithm&gt;\#include&lt;algorithm&gt;#include<algorithm>
#define N 200010\#define\ N\ 200010#define N 200010
using namespace std;using\ namespace\ std;using namespace std;
struct fenwick{struct\ fenwick\{struct fenwick{
int w[N],n,v;\quad int\ w[N],n,v;int w[N],n,v;
inline void init(int c){ n=c; }\quad inline\ void\ init(int\ c)\{\ n=c;\ \}inline void init(int c){ n=c; }
inline void add(int x){ for(;x&lt;=n;x+=x&amp;−x) ++w[x]; }\quad inline\ void\ add(int\ x)\{\ for(;x&lt;=n;x+=x\&amp;-x)\ ++w[x];\ \}inline void add(int x){ for(;x<=n;x+=x&−x) ++w[x]; }
inline void dec(int x){ for(;x&lt;=n;x+=x&amp;−x) −−w[x]; }\quad inline\ void\ dec(int\ x)\{\ for(;x&lt;=n;x+=x\&amp;-x)\ --w[x];\ \}inline void dec(int x){ for(;x<=n;x+=x&−x) −−w[x]; }
inline int sum(int x){ for(v=0;x;x&amp;=x−1) v+=w[x]; return v; }\quad inline\ int\ sum(int\ x)\{\ for(v=0;x;x\&amp;=x-1)\ v+=w[x];\ return\ v;\ \}inline int sum(int x){ for(v=0;x;x&=x−1) v+=w[x]; return v; }
} w;\}\ w;} w;
int h[N],cnt=1,d[N],l[N],r[N],clk,f[N];int\ h[N],cnt=1,d[N],l[N],r[N],clk,f[N];int h[N],cnt=1,d[N],l[N],r[N],clk,f[N];
int s[N][26],lst[N],v[N],n,m,tot=1,nc,q[N],A[N];int\ s[N][26],lst[N],v[N],n,m,tot=1,nc,q[N],A[N];int s[N][26],lst[N],v[N],n,m,tot=1,nc,q[N],A[N];
struct edge{ int v,nt; } G[N&lt;&lt;1];struct\ edge\{\ int\ v,nt;\ \}\ G[N&lt;&lt;1];struct edge{ int v,nt; } G[N<<1];
namespace SAM{namespace\ SAM\{namespace SAM{
int s[N][26],mx[N],f[N],cnt=1;\quad int\ s[N][26],mx[N],f[N],cnt=1;int s[N][26],mx[N],f[N],cnt=1;
inline int extend(int p,int c){\quad inline\ int\ extend(int\ p,int\ c)\{inline int extend(int p,int c){
int np=++cnt,q,nq;\quad \quad int\ np=++cnt,q,nq;int np=++cnt,q,nq;
mx[np]=mx[p]+1;\quad \quad mx[np]=mx[p]+1;mx[np]=mx[p]+1;
for(;p&amp;&amp;!s[p][c];p=f[p]) s[p][c]=np;\quad \quad for(;p\&amp;\&amp;!s[p][c];p=f[p])\ s[p][c]=np;for(;p&&!s[p][c];p=f[p]) s[p][c]=np;
if(!p){ f[np]=1; return np; }\quad \quad if(!p)\{\ f[np]=1;\ return\ np;\ \}if(!p){ f[np]=1; return np; }
q=s[p][c];\quad \quad q=s[p][c];q=s[p][c];
if(mx[q]==mx[p]+1) f[np]=q;\quad \quad if(mx[q]==mx[p]+1)\ f[np]=q;if(mx[q]==mx[p]+1) f[np]=q;
else{\quad \quad else\{else{
nq=++cnt;\quad \quad \quad nq=++cnt;nq=++cnt;
mx[nq]=mx[p]+1;\quad \quad \quad mx[nq]=mx[p]+1;mx[nq]=mx[p]+1;
f[nq]=f[q]; f[q]=f[np]=nq;\quad \quad \quad f[nq]=f[q];\ f[q]=f[np]=nq;f[nq]=f[q]; f[q]=f[np]=nq;
memcpy(s[nq],s[q],26&lt;&lt;2);\quad \quad \quad memcpy(s[nq],s[q],26&lt;&lt;2);memcpy(s[nq],s[q],26<<2);
for(;p&amp;&amp;s[p][c]==q;p=f[p]) s[p][c]=nq;\quad \quad \quad for(;p\&amp;\&amp;s[p][c]==q;p=f[p])\ s[p][c]=nq;for(;p&&s[p][c]==q;p=f[p]) s[p][c]=nq;
}\quad \quad \}}
return np;\quad \quad return\ np;return np;
}\quad \}}
inline void dfs(int x){\quad inline\ void\ dfs(int\ x)\{inline void dfs(int x){
l[x]=++clk;\quad \quad l[x]=++clk;l[x]=++clk;
for(int i=h[x];i;i=G[i].nt) dfs(G[i].v);\quad \quad for(int\ i=h[x];i;i=G[i].nt)\ dfs(G[i].v);for(int i=h[x];i;i=G[i].nt) dfs(G[i].v);
r[x]=clk;\quad \quad r[x]=clk;r[x]=clk;
}\quad \}}
inline void buildTree(){\quad inline\ void\ buildTree()\{inline void buildTree(){
for(int i=2;i&lt;=cnt;++i){\quad \quad for(int\ i=2;i&lt;=cnt;++i)\{for(int i=2;i<=cnt;++i){
G[++::cnt]=(edge){i,h[f[i]]}; h[f[i]]=::cnt;\quad \quad \quad G[++::cnt]=(edge)\{i,h[f[i]]\};\ h[f[i]]=::cnt;G[++::cnt]=(edge){i,h[f[i]]}; h[f[i]]=::cnt;
}\quad \quad \}}
dfs(1);\quad \quad dfs(1);dfs(1);
}\quad \}}
}\}}
char S[N],∗T;char\ S[N],*T;char S[N],∗T;
struct V{ int x,y,r; } g[N];struct\ V\{\ int\ x,y,r;\ \}\ g[N];struct V{ int x,y,r; } g[N];
inline bool cv(V a,V b){ return a.y&lt;b.y; }inline\ bool\ cv(V\ a,V\ b)\{\ return\ a.y&lt;b.y;\ \}inline bool cv(V a,V b){ return a.y<b.y; }
inline void Btrie(int x){inline\ void\ Btrie(int\ x)\{inline void Btrie(int x){
if(!∗T) return;\quad if(!*T)\ return;if(!∗T) return;
if(∗T==′B′){ ++T; return; } else\quad if(*T==&#x27;B&#x27;)\{\ ++T;\ return;\ \}\ elseif(∗T==′B′){ ++T; return; } else
if(∗T==′P′){ v[++nc]=x; ++T; Btrie(x); }\quad if(*T==&#x27;P&#x27;)\{\ v[++nc]=x;\ ++T;\ Btrie(x);\ \}if(∗T==′P′){ v[++nc]=x; ++T; Btrie(x); }
else{\quad else\{else{
if(!s[x][∗T−=′a′]) s[x][∗T]=++tot;\quad \quad if(!s[x][*T-=&#x27;a&#x27;])\ s[x][*T]=++tot;if(!s[x][∗T−=′a′]) s[x][∗T]=++tot;
f[tot]=x; d[tot]=d[x]+1; Btrie(s[x][∗T++]); Btrie(x);\quad \quad f[tot]=x;\ d[tot]=d[x]+1;\ Btrie(s[x][*T++]);\ Btrie(x);f[tot]=x; d[tot]=d[x]+1; Btrie(s[x][∗T++]); Btrie(x);
}\quad \}}
}\}}
int main(){int\ main()\{int main(){
scanf(&quot;%s%d&quot;,S,&amp;m);\quad scanf(&quot;\%s\%d&quot;,S,\&amp;m);scanf("%s%d",S,&m);
T=S; Btrie(1);\quad T=S;\ Btrie(1);T=S; Btrie(1);
int l=1,r=0; lst[q[++r]=1]=1;\quad int\ l=1,r=0;\ lst[q[++r]=1]=1;int l=1,r=0; lst[q[++r]=1]=1;
for(int x;l&lt;=r;++l){\quad for(int\ x;l&lt;=r;++l)\{for(int x;l<=r;++l){
x=q[l];\quad \quad x=q[l];x=q[l];
for(int i=0;i&lt;26;++i)\quad \quad for(int\ i=0;i&lt;26;++i)for(int i=0;i<26;++i)
if(s[x][i]){\quad \quad \quad if(s[x][i])\{if(s[x][i]){
lst[s[x][i]]=SAM::extend(lst[x],i);\quad \quad \quad \quad lst[s[x][i]]=SAM::extend(lst[x],i);lst[s[x][i]]=SAM::extend(lst[x],i);
q[++r]=s[x][i];\quad \quad \quad \quad q[++r]=s[x][i];q[++r]=s[x][i];
}\quad \quad \quad \}}
}\quad \}}
SAM::buildTree(); w.init(SAM::cnt);\quad SAM::buildTree();\ w.init(SAM::cnt);SAM::buildTree(); w.init(SAM::cnt);
for(int i=1;i&lt;=m;++i) scanf(&quot;%d%d&quot;,&amp;g[i].x,&amp;g[i].y),g[i].r=i;\quad for(int\ i=1;i&lt;=m;++i)\ scanf(&quot;\%d\%d&quot;,\&amp;g[i].x,\&amp;g[i].y),g[i].r=i;for(int i=1;i<=m;++i) scanf("%d%d",&g[i].x,&g[i].y),g[i].r=i;
sort(g+1,g+1+m,cv); v[0]=1;\quad sort(g+1,g+1+m,cv);\ v[0]=1;sort(g+1,g+1+m,cv); v[0]=1;
for(int x,y=1,i=1,j=1;i&lt;=m;){\quad for(int\ x,y=1,i=1,j=1;i&lt;=m;)\{for(int x,y=1,i=1,j=1;i<=m;){
while(j&lt;=m &amp;&amp; g[j].y==g[i].y) ++j;\quad \quad while(j&lt;=m\ \&amp;\&amp;\ g[j].y==g[i].y)\ ++j;while(j<=m && g[j].y==g[i].y) ++j;
x=v[g[i].y]; y=v[g[i−1].y];\quad \quad x=v[g[i].y];\ y=v[g[i-1].y];x=v[g[i].y]; y=v[g[i−1].y];
while(d[x]&gt;d[y]){\quad \quad while(d[x]&gt;d[y])\{while(d[x]>d[y]){
w.add(::l[lst[x]]); x=f[x];\quad \quad \quad w.add(::l[lst[x]]);\ x=f[x];w.add(::l[lst[x]]); x=f[x];
}\quad \quad \}}
while(d[y]&gt;d[x]){\quad \quad while(d[y]&gt;d[x])\{while(d[y]>d[x]){
w.dec(::l[lst[y]]); y=f[y];\quad \quad \quad w.dec(::l[lst[y]]);\ y=f[y];w.dec(::l[lst[y]]); y=f[y];
}\quad \quad \}}
while(x!=y){\quad \quad while(x!=y)\{while(x!=y){
w.add(::l[lst[x]]); x=f[x];\quad \quad \quad w.add(::l[lst[x]]);\ x=f[x];w.add(::l[lst[x]]); x=f[x];
w.dec(::l[lst[y]]); y=f[y];\quad \quad \quad w.dec(::l[lst[y]]);\ y=f[y];w.dec(::l[lst[y]]); y=f[y];
}\quad \quad \}}
for(;i&lt;j;++i)\quad \quad for(;i&lt;j;++i)for(;i<j;++i)
A[g[i].r]=w.sum(::r[lst[v[g[i].x]]])−w.sum(::l[lst[v[g[i].x]]]−1);\quad \quad \quad A[g[i].r]=w.sum(::r[lst[v[g[i].x]]])-w.sum(::l[lst[v[g[i].x]]]-1);A[g[i].r]=w.sum(::r[lst[v[g[i].x]]])−w.sum(::l[lst[v[g[i].x]]]−1);
}\quad \}}
for(int i=1;i&lt;=m;++i) printf(&quot;%d\n&quot;,A[i]);\quad for(int\ i=1;i&lt;=m;++i)\ printf(&quot;\%d\backslash n&quot;,A[i]);for(int i=1;i<=m;++i) printf("%d\n",A[i]);
}\}}

烽火HG680-LC刷机后体验:当贝纯净桌面+讯飞语音,老盒子秒变智能电视的折腾记录 本文详细记录了烽火HG680-LC机顶盒刷机后的使用体验,通过安装当贝纯净桌面和讯飞语音助手,老盒子焕发新生,实现无广告、快速响应的智能电视功能。文章对比了刷机前后的性能差异,分享了影音播放、语音控制等实用功能,并提供了ADB调试和问题解决的实用技巧,帮助用户将闲置的运营商盒子变身为高性能的智能影音中心。 阅读详情

相关推荐

IEPE传感器4mA恒流源接口电路

另外传感器的偏置电压大概在10V多点,一般接个电容把直流分量去掉。这里我们要把恒流源的电流设置在4毫安左右,R1取33Ω差不多正好。经过CR的隔直流电路后的波形是这样的。

老白的博客 6107

bzoj2434 阿狸的打字机 AC自动机&&树状数组

做完CTSC的题再去做NOI的题。。发现还是不会ww~/(ㄒoㄒ)/~~虽然是常规思路。     首先你会发现他打字的方式非常奇妙。。实际上不就是在构建一颗Tire吗?P相当于给节点标记;B相当于退回父亲节点;a..z相当于建立新的节点。     然后跑AC自动机得到fail指针。     首先得知道如何得出单个操作x,y。在后缀数组(sam,后缀树等)中,判断u是v的子串的方法是看是否是每

lych的博客 2058

基于AIS动态数据与AI结合得经纬度标示算法

港口船舶智能标注系统 本系统通过结合摄像头视频流和AIS船舶动态数据,利用AI技术实现船舶实时标注功能。系统架构包括视频流处理、AIS数据解析、船舶检测匹配和坐标映射转换等模块。关键技术步骤: AIS数据获取:通过本地接收机或网络API获取船舶位置、航速等信息 AI目标检测:采用YOLOv8等模型识别视频中的船舶 船舶匹配算法:通过位置投影或运动轨迹匹配视频目标与AIS数据 坐标映射:使用相机标定技术将经纬度转换为图像坐标 实时标注:在视频画面上叠加船名、位置等关键信息 应用场景包括港口监控、智能海事管理和

qianbo042311的博客 1807

【NOI2011】阿狸的打字机

【NOI2011】阿狸的打字机 题目描述   打字机上只有28个按键,分别印有26个小写英文字母和'B'、'P'两个字母。经阿狸研究发现,这个打字机是这样工作的:   ·输入小写字母,打字机的一个凹槽中会加入这个字母(这个字母加在凹槽的最后)。   ·按一下印有'B'的按键,打字机凹槽中最后一个字母会消失。   ·按一下印有'P'的按键,打字机会在纸上打印出凹槽中现...

Destiny 222

VLA-JEPA:具身智能中潜空间世界模型的工程落地实践

世界模型是具身智能实现环境理解与因果推演的核心基础,其本质是在状态空间中建模‘动作→结果’的动力学规律。传统基于像素或文本的世界模型因高维、非平稳、弱语义等缺陷,在真实机器人场景中鲁棒性差、部署成本高。JEPA(联合嵌入预测架构)通过构建物理约束的潜空间,将视觉-语言-动作(VLA)信号统一编码为低维、可微、可解释的状态表征,显著提升模型对抖动、遮挡、光照突变等干扰的适应能力,并支持实时闭环控制。该范式已在UR5e、Franka等多构型机械臂及Jetson边缘平台完成实测验证,成为VLA系统从实验室走向产线

weixin_34357928的博客 336

【参数不确定】敏感性分析(sensitivity analysis)

【运筹学】灵敏性分析

羊肉蛋花汤的博客 14万+

洛谷P2414 阿狸的打字机

题意:以trie的形式给出n个字符串,每次询问第x个字符串在第y个字符串中出现了几次。 解:总串长是n2级别的,所以不能用什么后缀自动机... [update]可以建triesam但是不知道trie上的一个节点对应到了sam上的哪几个节点...感觉可以做...好混乱 听说是个AC自动机上DP,然后怎么想状态都是n²的,然后看题解发现跟DP没啥关系... 是这样的:对于x在y中出现的每一次,...

weixin_34289744的博客 149

网络安全学习路线是怎样的?

为什么要学习安全? 近几年网络安全事件层出不穷,相信大家哪怕没遇到过,但也听过不少了吧。如服务器遭受入侵被黑,用户帐号被盗;被钓鱼、勒索病毒等,这些一旦发生,对企业而言都是不小的打击。因此,网络安全不容忽视,同时随着时代的不断发展,公司对于运维及网络工程师要求也越来越严格。未来越来越吃香的一定是技能方向广的复合型人才。网络安全可以说是一条非常好的发展道路。 今年两会期间,全国政协委员,360集团创始人、董事长周鸿祎提交了关于网络安全行业特殊人才的提案,为广大白帽子人员争取更好...

网安技术分享 8696

bzoj2434 [Noi2011]阿狸的打字机

Description 阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机。打字机上只有28个按键,分别印有26个小写英文字母和’B’、’P’两个字母。

wumingshi 625

企业级 Multi-Agent 实施指南:从需求拆解到上线验收的全流程方法论

本文基于12个不同行业(金融、制造、零售、互联网)的百万级Multi-Agent投产项目经验,提炼出一套可复用的全流程实施SOP,覆盖需求对齐与拆解、架构设计、开发实现、测试优化、上线部署、验收迭代6个核心阶段,包含标准化工具、量化指标、踩坑指南、可直接运行的代码示例,帮你避开90%的落地坑。需求阶段是项目成败的核心,必须对齐业务方的量化指标,明确系统边界架构设计要兼顾性能、安全、可扩展性,不要为了炫技选择复杂的框架工程化是投产的关键,测试、灰度、监控、降级机制缺一不可。

AI云原生与云计算技术学院 223

FC7300 SPI MCAL配置引导

Example - QMI8A01z外设:Example - QMI8A01z外设:

舊梦的博客 257

bzoj2434: [Noi2011]阿狸的打字机

题目链接 bzoj2434: [Noi2011]阿狸的打字机 题解 建出fail树,如果fail树中只有第y个字符串那就是求x串这个点的子树和 对于每组询问的y分类 我们可以重新进行一次建树一样的操作,每次dfs的到字符串y 只要在fail树上用dfs序+树状数组维护,每次把路径上的点插到bit里 代码 #include<queue> #include<vector&...

agtvo48266的专栏 146

ERROR: Ignored the following yanked versions: 0.8.3, 0.10.19.dev18 的解决办法

关于这个问题,博主是在进行项目中的python依赖包安装的时候遇见的,遇到的异常:关于这个问题,是在。

Spring Boot-Common On With You 641

bzoj2434: [Noi2011]阿狸的打字机 AC自动机

bzoj2434: [Noi2011]阿狸的打字机 Description 阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机。打字机上只有28个按键,分别印有26个小写英文字母和’B’、’P’两个字母。 经阿狸研究发现,这个打字机是这样工作的: l 输入小写字母,打字机的一个凹槽中会加入这个字母(这个字母加在凹槽的最后)。 l 按一下印有’B’的按键,打字机凹槽中最后一个字母会

maxtir的博客 359

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

[bzoj2434]阿狸的打字机

[bzoj2434]阿狸的打字机 按要求模拟建AC自动机,我们看可以发现答案就是fail树上的子树中出现的end节点个数。离线然后在trie上dfs,遇到对应节点就更新答案 代码 #include&lt;bits/stdc++.h&gt; using namespace std; const int N=4e5+5; const int SZ=26; struct trie{ i...

jerome_wei的博客 177

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

【BZOJ2434】[NOI2011]阿狸的打字机 AC自动机+DFS序+树状数组

【BZOJ2434】[NOI2011]阿狸的打字机 Description 阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机。打字机上只有28个按键,分别印有26个小写英文字母和'B'、'P'两个字母。经阿狸研究发现,这个打字机是这样工作的:l 输入小写字母,打字机的一个凹槽中会加入这个字母(这个字母加在凹槽的最后)。l 按一下印有'B'的按键,打字机凹槽中最后一个字母会...

aodanchui1057的博客 164

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

BZOJ2434: [Noi2011]阿狸的打字机

Description  阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机。打字机上只有28个按键,分别印有26个小写英文字母和'B'、'P'两个字母。 经阿狸研究发现,这个打字机是这样工作的: l 输入小写字母,打字机的一个凹槽中会加入这个字母(这个字母加在凹槽的最后)。 l 按一下印有'B'的按键,打字机凹槽中最后一个字母会消失。 l 按一下印有'P'的

wxh010910 512

【bzoj2434-阿狸的打字机】AC自动机+fail树+优化

【bzoj2434-阿狸的打字机】AC自动机+fail树+优化 http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=23083 Description 阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机。打字机上只有28个按键,分别印有26个小写英文字母和'B'...

qq_25768269的博客 189

BZOJ2434【NOI2011】阿狸的打字机 <AC自动机+Fail树+树状数组>

BZOJ2434 阿狸的打字机 阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机。打字机上只有28个按键,分别印有26个小写英文字母和'B'、'P'两个字母。 经阿狸研究发现,这个打字机是这样工作的: ·输入小写字母,打字机的一个凹槽中会加入这个字母(这个字母加在凹槽的最后)。 ·按一下印有'B'的按键,打字机凹槽中最后一个字母会消失。 ·按一下印有'P'的按键,打字机会在纸...

diwtwvs6045的博客 123

bzoj2434【NOI2011】阿狸的打字机

AC自动机+树状数组+DFS序

AaronPolaris 3453

BZOJ 2434 NOI2011 阿狸的打字机

2434: [Noi2011]阿狸的打字机 Time Limit:10 SecMemory Limit:256 MBSubmit:3593Solved:1952[Submit][Status][Discuss] Description 阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机。打字机上只有28个按键,分别印有26个小写英文字母和'B'、'...

182

bzoj 2434 [Noi2011]阿狸的打字机

AC自动机(fail树)+dfs序+树状数组

我要吃熊猫 272

【bzoj2434】[Noi2011]阿狸的打字机

2434: [Noi2011]阿狸的打字机 Time Limit:10 SecMemory Limit:256 MBSubmit:2460Solved:1379[Submit][Status][Discuss] Description 阿狸喜欢收藏各种稀奇古怪的东西,最近他淘到一台老式的打字机。打字机上只有28个按键,分别印有26个小写英文字母和'B'、'...

anzhi7214的博客 119
上一篇: LCT模板
下一篇: KD-Tree模板
扩展的灰
博客等级 码龄12年 60粉丝 342原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值