新闻详情

新闻详情

首页 / 资讯中心 / 详情

P9196 [JOI Open 2016] 销售基因链 / Selling RNA Strands 题解

发布时间:2026/10/1 16:13:22来源:尧图网络
P9196 [JOI Open 2016] 销售基因链 / Selling RNA Strands 题解
P9196 [JOI Open 2016] 销售基因链 / Selling RNA Strands 题解思路考虑映射将基因库的字符串SiS_iSi​映射成Si#SiS_i\#S_iSi​#Si​的形式对于询问P,QP,QP,Q映射成Q#PQ\#PQ#P的形式那么就相当于问每个询问串在基因库中出现的次数直接跑 AC 自动机多模匹配即可。代码#includebits/stdc.husingnamespacestd;typedeflonglongll;intn;intch[5000010][5],ed[5000010],fail[5000010],c[255],id;intip[100010];voidins(string s,intx){intp0;for(inti0;is.size();i){intjc[s[i]];if(!ch[p][j])ch[p][j]id;pch[p][j];}ip[x]p;}intq[4100010],l1,r;voidbuild(){for(inti0;i5;i)if(ch[0][i])q[r]ch[0][i];while(lr){intxq[l];for(inti0;i5;i){intych[x][i];if(!y)ych[fail[x]][i];elsefail[y]ch[fail[x]][i],q[r]y;}}}vectorintG[5000010];voidquery(string s){intp0;for(inti0;is.size();i){intjc[s[i]];pch[p][j];ed[p];}}voiddfs(intx){for(inty:G[x]){dfs(y);ed[x]ed[y];}}string s[100010];intmain(){ios::sync_with_stdio(0);cin.tie(0);c[A]0;c[G]1;c[U]2;c[C]3;c[#]4;intq;cinnq;for(inti1;in;i){cins[i];s[i]s[i]#s[i];//字符串映射}dfs(0);for(inti1;iq;i){string s,t;cinst;st#s;//字符串映射ins(s,i);}build();//建AC自动机for(inti1;iid;i)G[fail[i]].push_back(i);for(inti1;in;i)query(s[i]);//多模匹配dfs(0);for(inti1;iq;i){couted[ip[i]]\n;}return0;}
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

WorkBuddy 光伏方案入门:别只看装机容量,把阴影、负载与回本假设讲明白 2026/10/1 17:02:10

WorkBuddy 光伏方案入门:别只看装机容量,把阴影、负载与回本假设讲明白

WorkBuddy 光伏方案入门:别只看装机容量,把阴影、负载与回本假设讲明白 [!NOTE] 用屋顶面积乘组件功率就得出收益,是常见的过度简化。方案至少要区分资源、朝向、遮挡、系统损耗、负载和电价情景。 本课不会用“AI 一键完成”制造错觉,而是把 WorkBuddy、Python 3.11、pand…

阅读更多 →
UE5地编必会:烘焙光照原理与Lumen差异及实操指南 2026/10/1 17:02:10

UE5地编必会:烘焙光照原理与Lumen差异及实操指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
前端精读:深入 JavaScript 事件循环(Event Loop)与异步编程原理 2026/10/1 17:02:10

前端精读:深入 JavaScript 事件循环(Event Loop)与异步编程原理

文档技术博客教程 【免费下载链接】weekly 前端精读周刊。帮你理解最前沿、实用的技术。 项目地址: https://gitcode.com/GitHub_Trending/we/weekly 点击查看 免费下载 事件循环(Event Loop)是 JavaScript 运行机制的核心"内科"&…

阅读更多 →
自治数据平台实战:自动化运维与性能调优的架构设计 2026/10/1 17:02:10

自治数据平台实战:自动化运维与性能调优的架构设计

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
图片像素、分辨率与文件体积怎么算?一文厘清概念与实战 2026/10/1 17:02:09

图片像素、分辨率与文件体积怎么算?一文厘清概念与实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
精读《Excel JS API》:从 Range 抽象到 context.sync 的开放 API 设计 2026/10/1 17:02:03

精读《Excel JS API》:从 Range 抽象到 context.sync 的开放 API 设计

文档技术博客教程 【免费下载链接】weekly 前端精读周刊。帮你理解最前沿、实用的技术。 项目地址: https://gitcode.com/GitHub_Trending/we/weekly 点击查看 免费下载 Excel 如今可以利用 JavaScript 根据单元格数据生成图表、表格,或通过 JS 拓展自定…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉