466.统计重复个数
定义由 n 个连接的字符串 s 组成字符串 S,即 S = [s,n]
。例如,["abc", 3]
=“abcabcabc”。
另一方面,如果我们可以从 s2 中删除某些字符使其变为 s1,我们称字符串 s1 可以从字符串 s2 获得。例如,“abc” 可以根据我们的定义从 “abdbec” 获得,但不能从 “acbbe” 获得。
现在给出两个非空字符串 S1 和 S2(每个最多 100 个字符长)和两个整数 0 ≤ N1 ≤ 106 和 1 ≤ N2 ≤ 106。现在考虑字符串 S1 和 S2,其中S1=[s1,n1]
和S2=[s2,n2]
。找出可以使[S2,M]
从 S1
获得的最大整数 M。
示例:
输入:
s1 ="acb",n1 = 4
s2 ="ab",n2 = 2返回:
2
class Solution {
public:
int getMaxRepetitions(string s1, int n1, string s2, int n2) {
vector<int> repeatCnt(n1 + 1, 0);
vector<int> nextIdx(n1 + 1, 0);
int j = 0, cnt = 0;
for (int k = 1; k <= n1; ++k) {
for (int i = 0; i < s1.size(); ++i) {
if (s1[i] == s2[j]) {
++j;
if (j == s2.size()) {
j = 0;
++cnt;
}
}
}
repeatCnt[k] = cnt;
nextIdx[k] = j;
for (int start = 0; start < k; ++start) {
if (nextIdx[start] == j) {
int interval = k - start;
int repeat = (n1 - start) / interval;
int patternCnt = (repeatCnt[k] - repeatCnt[start]) * repeat;
int remainCnt = repeatCnt[start + (n1 - start) % interval];
return (patternCnt + remainCnt) / n2;
}
}
}
return repeatCnt[n1] / n2;
}
};
466.统计重复个数相关推荐
- 466. 统计重复个数 golang[转]
转载(mark) https://blog.by24.cn/archives/leetcode-count-the-repetitions.html func getMaxRepetitions(s1 ...
- LeetCode 466. 统计重复个数(循环节)
1. 题目 由 n 个连接的字符串 s 组成字符串 S,记作 S = [s,n].例如,["abc",3]="abcabcabc". 如果我们可以从 s2 中删 ...
- 466. 统计重复个数
定义由 n 个连接的字符串 s 组成字符串 S,即 S = [s,n].例如,["abc", 3]="abcabcabc". 另一方面,如果我们可以从 s2 中 ...
- [Leedcode][JAVA][第466题][统计重复个数][数组]
[问题描述]466. 统计重复个数 由 n 个连接的字符串 s 组成字符串 S,记作 S = [s,n].例如,["abc",3]="abcabcabc".如果 ...
- Leetcode466.统计重复个数——掐头去尾寻找循环点
文章目录 引入 本题题解 引入 每日一题出现了这么一道题:466. 统计重复个数
- mysql 查询重复字段统计重复个数和删除重复字段的重复数据
假设我们有表A 里面有字段 field 里面有很多重复数据. 现在需要查询当前字段重复的个数 mysql>select filed ,count(*) as total from A grou ...
- (JS)统计重复个数
由 n 个连接的字符串 s 组成字符串 S,记作 S = [s,n].例如,["abc",3]="abcabcabc". 如果我们可以从 s2 中删除某些字符使 ...
- hash 建表 query 统计重复个数
WLS的数列 难度级别:A: 运行时间限制:1000ms: 运行空间限制:51200KB: 代码长度限制:2000000B 试题描述 WLS喜欢数学,有一天,老师给了他一个长度为N的数列A,问他有多少 ...
- js数组去重并统计重复个数
方法一.利用正则和reduce() var str = 'askbuasdjjkasjdixcjasa'var arr = str.split('').sort().join('').match(/( ...
- python统计excel中重复数据_EXCEL公式解读:统计不重复个数
作者:祝洪忠 转自:Excel之家ExcelHome 小伙伴们好啊,今天咱们一起学习一下COUNTIF函数的高级应用,来看看如何使用这个函数完成不重复个数的统计. 模式化的公式为: =SUMPRODU ...
最新文章
- linux下的打包与压缩
- 记一次 .NET 医院CIS系统 内存溢出分析
- cf1523B. Lord of the Values
- 【2019icpc南京站网络赛 - H】Holy Grail(最短路,spfa判负环)
- 如何利用URLOS和云存储打造一个不惧怕宕机的网站环境
- 【.Net MF网络开发板研究-06】以太网转串口
- 林子雨版《大数据技术原理与应用》实验五 信息挖掘详解
- Studio 3T for MogoDB调整字体大小
- 基于RNN生成古诗词
- oracle查看视图定义语句_Oracle-视图
- 【C语言编程】 配对碱基链
- Java 基础学习之字符串的简单操作和适配器设计模式
- tl-wdr7300虚拟服务器怎么设置,TP-Link TL-WDR7300路由器wifi密码怎么设置?(电脑)...
- Linux操作系统之安装Linux虚拟机
- 23230118英语学习
- Gson详解--入门篇
- ubuntu 超级优化,不仅仅是禁用几个服务哦
- 计算机主机箱内的主要硬件有,电脑的基本硬件包括哪些
- 安卓手机内置NFC模块的使用和开发
- 逝去的2009(四)
热门文章
- [ASP.NET MVC 小牛之路]08 - Area 使用
- mac设置多个屏幕显示的问题
- Android开发之SDCardUtils工具类。java工具详细代码,附源代码。判断SD卡是否挂载等功能...
- emacs 安装指引
- PHP中钩子函数的实现与认识
- 【COCOS2DX-LUA 脚本开发之十二】Hybrid模式-利用AssetsManager实现在线更新脚本文件lua、js、图片等资源(免去平台审核周期)...
- 五大列级庄_酒庄拉菲古堡Chateau Lafite Rothschild, 波尔多五大一级庄之首
- springboot @value 默认值_原创 | 搞定默认值
- python连接mysql代码_Python连接MySQL及基本操作代码
- 最小生成树:Kruskal算法