题目链接
马拉车+简单膜你

#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
const int MAXN = 11000010;
const int MOD = 19930726;
char b[MAXN], a[MAXN << 1];
int hw[MAXN << 1], ans = 1, n, c[MAXN];
#define ll long long
ll now, m;
int fast_pow(int a, ll k){int ans = 1;while(k){if(k & 1) ans = (ll)ans * a % MOD;a = (ll) a * a % MOD;k >>= 1;}return ans;
}
int main(){scanf("%d%lld", &n, &m);scanf("%s", b);a[0] = a[1] = '#';for(int i = 0; i < n; ++i)a[(i << 1) + 2] = b[i], a[(i << 1) + 3] = '#';int maxright = 0, mid; n = (n << 1) + 3;for(int i = 1; i < n; ++i){if(i < maxright)hw[i] = min(hw[(mid << 1) - i], hw[mid] + mid - i);else hw[i] = 1;while(a[i + hw[i]] == a[i - hw[i]]) ++hw[i];if(hw[i] + i > maxright){maxright = hw[i] + i;mid = i;}++c[hw[i] - 1];}for(int i = (n - 3) >> 1; i; --i){if(i & 1 ^ 1) continue;now += c[i];if(m <= now){ ans = (ll) ans * fast_pow(i, m) % MOD; m = 0; break; }m -= now; ans = (ll) ans * fast_pow(i, now) % MOD;}if(m) ans = -1;printf("%d\n", ans);return 0;
}

转载于:https://www.cnblogs.com/Qihoo360/p/10848541.html

【洛谷 P1659】 [国家集训队]拉拉队排练(manacher)相关推荐

  1. P1659 [国家集训队]拉拉队排练

    题目描述 艾利斯顿商学院篮球队要参加一年一度的市篮球比赛了.拉拉队是篮球比赛的一个看点,好的拉拉队往往能帮助球队增加士气,赢得最终的比赛.所以作为拉拉队队长的楚雨荨同学知道,帮助篮球队训练好拉拉队有多 ...

  2. luogu P1659 [国家集训队]拉拉队排练

    唔....话说好久没有发布题解了(手痒痒了 首先特别鸣谢lykkk大佬今天下午教我Manacher算法,甚是感谢 为了体现学习成果,写一篇蒟蒻版的题解(大佬勿喷 言归正传 题面-->在这儿 首先 ...

  3. 洛谷P2619 [国家集训队]Tree I 题解

    洛谷P2619 [国家集训队]Tree I 题解 题目链接:P2619 [国家集训队]Tree I 题意: 给你一个无向带权连通图,每条边是黑色或白色.让你求一棵最小权的恰好有 need\text{n ...

  4. 洛谷P1494 [国家集训队]小Z的袜子

    P1494 [国家集训队]小Z的袜子 题目描述 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿.终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命-- ...

  5. 洛谷 P4643 [国家集训队]阿狸和桃子的游戏

    题目:[国家集训队]阿狸和桃子的游戏 思路: 截个图,这个思路太巨了Orz. 图可以点.

  6. 洛谷P2839 [国家集训队]middle(主席树)

    P2839 [国家集训队]middle 我们可以考虑二分中位数 checkcheckcheck 答案,那么我们对于某个值 midmidmid ,把 [l,r][l,r][l,r] 内的所有小于 mid ...

  7. 洛谷P2619 [国家集训队2]Tree I(带权二分,Kruscal,归并排序)

    洛谷题目传送门 给一个比较有逼格的名词--WQS二分/带权二分/DP凸优化(当然这题不是DP). 用来解决一种特定类型的问题: 有\(n\)个物品,选择每一个都会有相应的权值,需要求出强制选\(nee ...

  8. 洛谷P4555 [国家集训队]最长双回文串(manacher 线段树)

    题意 题目链接 Sol 我的做法比较naive..首先manacher预处理出以每个位置为中心的回文串的长度.然后枚举一个中间位置,现在要考虑的就是能覆盖到i - 1的回文串中 中心最靠左的,和能覆盖 ...

  9. [回文树][BZOJ2160][国家集训队]拉拉队排练

    Description 艾利斯顿商学院篮球队要参加一年一度的市篮球比赛了.拉拉队是篮球比赛的一个看点,好的拉拉队往往能帮助球队增加士气,赢得最终的比赛.所以作为拉拉队队长的楚雨荨同学知道,帮助篮球队训 ...

最新文章

  1. R语言cox回归模型案例(绘制列线图、校正曲线):放疗是否会延长胰脏癌手术患者的生存时间
  2. 从传统运维到云运维演进历程之软件定义存储(一)
  3. Hadoop2.0 YARN
  4. 实验室机器OracleXE客户端连接远程Oracle服务器
  5. 派生类的拷贝构造【C++继承】
  6. Design Pattern Quick Overview
  7. 图片加载框架Picasso - 源码分析
  8. Java开发人员应该知道的三件事
  9. mysql 8.0远程连接_安装mysql 8.0.17并配置远程访问的方法
  10. MySQL数据类型之BLOB与TEXT及其最大存储限制
  11. 【clickhouse】clickhouse 主从配置 从节点无数据
  12. php 实现顺序查找
  13. 10个前端经常遇到的问题解决方案
  14. SPSS-描述统计与图示分析
  15. Android中一个有趣的crash的日志分析
  16. java flex 聊天_【转帖】实现了视频私聊功能
  17. 2023最新!QQ接入ChatGpt!!!保姆级教程
  18. 自己制作的直流电机驱动器
  19. 程序学3DMax之改变物体的中心轴及物体归置零点
  20. 【Proteus仿真】步进电机转速数码管显示

热门文章

  1. 《MySQL——count()逻辑》
  2. 成对的歌曲,其总持续时间可被60整除
  3. php 移植 arm 精简,php5.4.5移植到arm-linux摘要,lighttpd配置
  4. c和汇编混合编程----main的反汇编
  5. php 子网掩码正则,验证子网掩码正则表达式代码范例
  6. 大四阶段的社会实践的主要目的是_疫情当前,大三大四的学生“很惨”?大一大二的学生也别松懈...
  7. Linux--线程死锁
  8. 常量指针与指针常量的区别(转帖)
  9. 计算机网络(一)计算机网络体系
  10. 【Linux系统编程学习】 动态库的制作与使用