【BZOJ】2160拉拉队排练-回文自动机
题解
这题好坑啊。模数也十分诡异。
注意:K≤1012K≤1012K\leq 10^{12},要开long longlonglonglong\ long。
注意:只要奇数个数的回文串
注意:达不到KKK个输出−1" role="presentation" style="position: relative;">−1−1-1
还得套个快速幂
代码
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e6+10,mod=19930726;
int p,n,ch[N][26],len[N],f[N],tot;
ll K,ans=1,t[N],cnt[N];
char s[N];inline ll fp(ll a,ll b)
{ll re=1;for(;b;b>>=1,a=a*a%mod) if(b&1) re=re*a%mod;return re;
}
inline int new_node(int m){len[tot]=m;return tot++;}
inline int get_fail(int x,int m)
{for(;s[m-len[x]]!=s[m+1];x=f[x]);return x;}inline void insert(int alp,int m)
{p=get_fail(p,m);if(!ch[p][alp]){int now=new_node(len[p]+2);f[now]=ch[get_fail(f[p],m)][alp];ch[p][alp]=now;} cnt[(p=ch[p][alp])]++;
}int main(){int i,j;scanf("%d%lld%s",&n,&K,s+1);new_node(0);new_node(-1);f[0]=1;for(i=1;i<=n;++i) insert(s[i]-'a',i-1);for(i=tot-1;i>1;--i) if(f[i]!=0 && f[i]!=1)cnt[f[i]]+=cnt[i];n=n-((n+1)&1);for(i=2;i<tot;++i) t[len[i]]+=cnt[i];for(i=n;i>0;i-=2){if(t[i]==0) continue;if(K>=t[i]){K-=t[i];ans=ans*fp((ll)i,t[i])%mod;}else{ans=ans*fp((ll)i,K)%mod;K=0;}if(K==0) break;}if(K>0) printf("-1\n");else printf("%lld\n",ans);
}
【BZOJ】2160拉拉队排练-回文自动机相关推荐
- HYSBZ - 2160 拉拉队排练(回文自动机)
题目链接:点击查看 题目大意:给出一个字符串 s ,和一个整数 k,现在要求出所有长度为奇数的回文子串从大到小开始数前 k 个回文子串的长度的乘积 题目分析:回文自动机跑一遍字符串 s 后把长度为奇数 ...
- BZOJ 2160 拉拉队排练
2160: 拉拉队排练 Description 艾利斯顿商学院篮球队要参加一年一度的市篮球比赛了.拉拉队是篮球比赛的一个看点,好的拉拉队往往能帮助球队增加士气,赢得最终的比赛.所以作为拉拉队队长的楚雨 ...
- bzoj 2160: 拉拉队排练
2160: 拉拉队排练 Time Limit: 10 Sec Memory Limit: 259 MB [Submit][Status][Discuss] Description 艾利斯顿商学院篮球 ...
- bzoj 4044 Virus synthesis - 回文自动机 - 动态规划
题目传送门 需要高级权限的传送门 题目大意 要求用两种操作拼出一个长度为$n$的只包含'A','T','G','C'的字符串 在当前字符串头或字符串结尾添加一个字符 将当前字符串复制,将复制的串翻转, ...
- [ BZOJ 2160 ] 拉拉队排练
\(\\\) \(Description\) 一个由小写字母构成的长为\(N\)的字符串,求前\(K\)长的奇数长度回文子串长度之积,对\(19930726\)取模后的答案. \(N\in [1,10 ...
- BZOJ 4044 Luogu P4762 [CERC2014]Virus Synthesis (回文自动机、DP)
好难啊..根本不会做..基本上是抄Claris... 题目链接: (bzoj)https://www.lydsy.com/JudgeOnline/problem.php?id=4044 (luogu) ...
- BZOJ 4480: [Jsoi2013]快乐的jyy(回文自动机)
Description [故事背景] JYY在JSOI有很多很多的好朋友,比如PUPPY,KFC还有PUPPUP.因为 有了这么多的好朋友,所以JYY每天都很快乐.某天,JYY发现好朋友之间关 系的好 ...
- 后缀自动机/回文自动机/AC自动机/序列自动机----各种自动机(自冻鸡) 题目泛做...
题目1 BZOJ 3676 APIO2014 回文串 算法讨论: cnt表示回文自动机上每个结点回文串出现的次数.这是回文自动机的定义考查题. 1 #include <cstdlib> 2 ...
- BZOJ4044 Luogu P4762 [CERC2014]Virus Synthesis (回文自动机、DP)
好难啊..根本不会做..基本上是抄Claris... 题目链接: (bzoj)https://www.lydsy.com/JudgeOnline/problem.php?id=4044 (luogu) ...
最新文章
- sdk没有登录什么意思_不需要接入SDK的第三方登录及分享
- RPC实现MQ通信的一个小例子
- 对使用Jolt调用Tuxedo的一个简单的封装
- Zabbix监控 之 OID动态索引
- JAVA自动补全插件
- mysql 协议的query包及解析
- 那些年收藏的技术文章(一) CSDN篇
- html语言hr的用法,htmlhr各种样式使用 - 米扑博客
- 【JUC】第六章 Fork/Join 框架、CompletableFuture
- Windows下Ionic Android开发环境搭建
- 15个在线网站检测工具
- 怎么把mov格式的视频转换成mp4?
- 【SSM电商项目后台开发】001-数据库建表
- 向武 清华大学 计算机,哥哥保送弟弟全市第二 双胞胎同时上清华(组图)
- czl蒻蒟的OI之路7
- Internal error: : 8 [#1] PREEMPT SMP ARM,vmlinux反汇编命令调试查找错误的步骤
- getElementByTagName
- 树莓派4B debian嵌入式远程连接远程控制xrdp(Ubuntu为例)
- Jenkins 用标签构建配置完后。 标签不显示
- 如何将您的Nintendo 3DS重置为出厂设置
热门文章
- linux串口号固定
- JAVA IO(续)
- 51单片机c语言tlc549,tlc549中文资料汇总_tlc549引脚图及功能_工作原理_特性参数及典型应用电路程序...
- 简单认识什么是UI设计
- 江苏苏州|第七届“祖冲之杯”昆山创新创业大赛上海智能制造装备与技术选拔赛项目征集公告
- Flutter的原理及美团的实践!
- 思路迪通过港交所上市聆讯:前五个月收入1.6亿元,专利储备丰富
- [炉石]2017杭州第五周实力赛记录
- 人脸识别是什么?及人脸识别的流程
- 微信小程序 map地图使用