• 题意
    给出一个长度为\(n(\leqslant 50000)\)的字符串,求形如\(\mathrm{UVU}\)形式的字串,其中\(\mathrm{V}\)的长度给定。
  • 题解
    枚举\(\mathrm{U}\)的长度\(L\),考虑第一个\(\mathrm{U}\)的出现位置,显然每一个这样的\(\mathrm{U}\)都必然覆盖且仅覆盖一个\(kL,k \in N\)的位置,那么我们考虑在这个位置统计到它,对于一个\(kL\)的位置,它对答案的贡献是\(\max(\min(L, lcp_{pre}(i, i + L + h)) + \min(L, lcp_{suf}(i, i + L + h))\),\(lcp_{pre}, lcp_{suf}\)分别表示前缀和后缀的最长公共子串。
    根据调和级数,复杂度为\(O(n\log n)\)
  • code

最新文章

  1. # C/C++的笔试题目
  2. vmware安装linux6.3
  3. uglifyjs压缩批处理
  4. Atitit。如何实现dip, di ,ioc ,Service Locator的区别于联系
  5. eclipse设置项目发布到tomcat webaap下
  6. Swift - 29 - 参数的默认值
  7. cf479D Long Jumps
  8. UVA 10905 Children's Game 孩子的游戏 贪心
  9. python中文编码问题深入分析(一):字符编码基础
  10. 每天一个Linux命令(05)--rm命令
  11. java webservice简单的例子
  12. JQuery 中$("input:eq(0)") eq 的意思
  13. ES5与ES6中的继承
  14. 深度学习原理与框架-递归神经网络-RNN_exmaple(代码) 1.rnn.BasicLSTMCell(构造基本网络) 2.tf.nn.dynamic_rnn(执行rnn网络) 3.tf.expand_dim(增加输入数据的维度) 4.tf.tile(在某个维度上按照倍数进行平铺迭代) 5.tf.squeeze(去除维度上为1的维度)
  15. 只打开一次浏览器,生成html测试报告<小紧张中......>
  16. 关于Java与Map的那点事
  17. Redis中取得所有Key、过期时间配置与获取、Key过期通知。
  18. jetty 代码启动
  19. let和var定义变量的区别
  20. Ant demo

热门文章

  1. 做了五套登录页,晒一下 自己比较满意的~ oh yeh~
  2. php生成二维码
  3. Dalvik虚拟机进程和线程的创建过程分析
  4. DATE 使用
  5. Noah的学习笔记之Python篇:函数“可变长参数”
  6. Apriori算法在购物篮分析中的运用
  7. iOS: 填充数据表格
  8. Flex时间操作
  9. 通过jquery获取后台传过来的值进行全选
  10. ARCH Linux pacman 包管理器出错总结