牛客小白月赛28 G.牛牛和字符串的日常

题目链接

题目描述

牛牛每天都要做的事就是读书,从书里找自己喜欢的句子,他每天都会去读一本书,如果牛牛今天读的书的某连续 k k k 个字符刚好是牛牛喜欢句子的某个前缀,那么牛牛将得到{}kk点兴奋感,但他每天只能注意到一次自己喜欢的句子(也就是每天只能增加一次兴奋感),也就是说他会尽量去找那个让自己兴奋度增加最多的句子,那么, n n n 天之后牛牛总共最多能有多少兴奋感?

输入描述:

第一行是一个字符串 s ( ∣ s ∣ < = 1 × 1 0 5 ) s(|s|<=1×10^5) s(∣s∣<=1×105)表示牛牛喜欢的字符串
第二行是一个整数 n n n,表示总共经历了 n n n 天 ( n < = 100 ) (n<=100) (n<=100)
接下来 n n n 行每行一个字符串 t i ( ∣ t i ∣ < = 1 × 1 0 5 ) t_i(|t_i|<=1×10^5) ti​(∣ti​∣<=1×105),分别表示牛牛第i天读的书接下来 n n n 行每行一个字符串 t i ​ ( ∣ t i ​ ∣ < = 1 × 1 0 5 ) t _i​(∣t _i​ ∣<=1×10 ^5 ) ti​​(∣ti​​∣<=1×105),分别表示牛牛第 i i i 天读的书

输出描述:

输出这 n n n 天来牛牛最大能获得的兴奋感

示例1

输入

abcdefg
3
adcabc
xyz
abdefg

输出

5

典型的 KMP~
对每个输入的字符串,用 KMP 算法求出最大公共前缀即可,AC代码如下:

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main() {string s,t;int m,ans=0;cin>>s>>m;int len1=s.size();while(m--){cin>>t;int len2=t.size(),k=0,mx=0;for(int i=0;i<len2;i++){if(s[k]==t[i]){k++;mx=max(mx,k);if(k==len1) break;}else{i-=k;k=0;}}ans+=mx;}cout<<ans;return 0;
}

牛客小白月赛28 G.牛牛和字符串的日常相关推荐

  1. 牛客小白月赛28 B.牛牛和牛可乐的赌约2

    牛客小白月赛28 B.牛牛和牛可乐的赌约2 题目链接 题目描述 牛牛感觉在上一次赌约中,情况对于自己非常不利,所以决定再赌一场. 这时候,牛蜓队长出现了:第一,绝对不意气用事:第二,绝对不漏判任何一件 ...

  2. 牛客小白月赛28 A牛牛和牛可乐的赌约 (数论-费马小定理)

    题目 A牛牛和牛可乐的赌约 题目链接 传送门 题解 注意阅读题目是计算牛牛输的概率. 需要掌握的知识点 快速幂 费马小定理 分数取模 首先我们容易知道 牛牛 赢的概率是 1 n m \frac{1}{ ...

  3. 牛客小白月赛28 J.树上行走

    牛客小白月赛28 J.树上行走 题目链接 题目描述 牛牛苦练武功绝学--轻功水上漂,最终没有练成,但是他学会了在树上行走的本领. 这天,牛牛落入了敌人的陷阱,身后有巨石追击,面前有n个点,n-1条边连 ...

  4. 牛客小白月赛28 D.位运算之谜

    牛客小白月赛28 D.位运算之谜 题目链接 题目描述 a+ba + ba+b 的值为 xxx,a&ba\&ba&b 的值为 yyy,首先需要判断能否有一组 a,ba,ba,b ...

  5. 牛客小白月赛21 G.Game

    牛客小白月赛21 G.Game 题目描述 Nancy喜欢博弈! Johnson和Nancy得到了一个神奇的多重集合,仅包含一个正整数n,两个人轮流进行操作. 一次操作可以将集合中一个数字分解为它的任意 ...

  6. 牛客小白月赛6 G.指纹锁

    牛客小白月赛6 G.指纹锁 题目链接 题目描述 HA实验有一套非常严密的安全保障体系,在HA实验基地的大门,有一个指纹锁. 该指纹锁的加密算法会把一个指纹转化为一个不超过1e7的数字,两个指纹数值之差 ...

  7. 牛客小白月赛28 E-会当凌绝顶,一览众山小 线段树+二分暴力模拟

    牛客小白月赛28 E-会当凌绝顶,一览众山小 线段树+二分暴力模拟 题意 思路 Code 传送门: https://ac.nowcoder.com/acm/contest/16081/E 题意 登山顺 ...

  8. 牛客小白月赛1 G .あなたの蛙は旅⽴っています

    牛客小白月赛1 G .あなたの蛙は旅⽴っています 题目链接 题目描述 あなたの蛙は旅立っています! 你的蛙正在考虑它应该按怎样的路线去旅行.这些景点可以抽象为 N N N 个镶嵌着的六边形.每个景点 ...

  9. 牛客小白月赛2 G 文 【模拟】

    链接:https://www.nowcoder.com/acm/contest/86/G 来源:牛客网 题目描述 Sεlιнα(Selina) 开始了新一轮的男友海选.她要求她的男友要德智体美劳样样都 ...

最新文章

  1. 【问题帖】压缩图片大小至指定Kb以下
  2. 扩展Visual Studio 2010服务器资源管理器中的SharePoint结点
  3. 008 Android之Service
  4. JavaScript实现articulation-points(关键点)(割点)算法(附完整源码)
  5. oracle端口号为什么有三个,oracle安装时出现一个端口号
  6. 将Spring 3.x和Hibernate 3.x升级到Spring Platform 1.0.1(Spring + hibernate 4.x)
  7. vb combox获取选定index_Python-新闻评论获取
  8. 支持html签名的邮箱app,在iPhone和iPad上创建使用丰富的HTML电子邮件签名 | MOS86
  9. 断开现有的网络共享映射_彭世瑜_新浪博客
  10. 利用VScode 编写C51/stm32代码
  11. 树莓派4B连接PCF8591模块
  12. 抖音小程序基础之 TTSS 样式是什么
  13. 用到的Android studio依赖库
  14. DSS 部署环境需求清单
  15. JAVA | MongoDB 去重、聚合函数、Criteria Query使用
  16. oracle 打包图文,oracle应用程序实现打包 的方法
  17. 什么是PON(无源光纤网络)、PON的发展及演进
  18. 联想计算机不能进入系统桌面,联想笔记本进不去桌面的解决方法
  19. arcgis根据7参转坐标_ArcGIS和COORD进行坐标七参数转换国家2000方法(可下载坐标转换工具)...
  20. PRN(20201231):驾驶人驾驶决策机制遵循最小作用量原理

热门文章

  1. Android颜色代码
  2. 1327: 五级制成绩(C语言)
  3. libevent 编译
  4. mysql日期加天_MySql日期加天数,小时,分钟...得到新的时间
  5. CHOOSE函数介绍:
  6. 使用7-zip进行分卷压缩和解分卷压缩(Windows和Linux)
  7. 网站请勿随意使用第三方CDN资源调用公开库资源 - 聆听分享网
  8. 从零开始学USB(七、端点、管道、接口、配置、设备)【转】
  9. S参数及高速电子连接器特性参数简介
  10. wordpress输出导航菜单