Codeforces 1105B:Zuhair and Strings(字符串水题)
time limit per test: 1 second
memory limit per test: 256 megabytes
input: standard input
output: standard output
Given a string sss of length nnn and integer k (1≤k≤n)k\ (1≤k≤n)k (1≤k≤n). The string sss has a level xxx, if xxx is largest non-negative integer, such that it’s possible to find in sss:
- xxx non-intersecting (non-overlapping) substrings of length kkk,
- all characters of these x substrings are the same (i.e. each substring contains only one distinct character and this character is the same for all the substrings).
A substring is a sequence of consecutive (adjacent) characters, it is defined by two integers iii and j (1≤i≤j≤n)j\ (1≤i≤j≤n)j (1≤i≤j≤n), denoted as s[i…j]s[i…j]s[i…j] = “sisi+1…sjs_is_{i+1}…s_jsisi+1…sj”.
For example, if k=2k=2k=2, then:
the string “aabb” has level 111 (you can select substring “aa”),
the strings “zzzz” and “zzbzz” has level 222 (you can select two non-intersecting substrings “zz” in each of them),
the strings “abed” and “aca” have level 000 (you can’t find at least one substring of the length k=2k=2k=2 containing the only distinct character).
Zuhair gave you the integer kkk and the string s of length nnn. You need to find xxx, the level of the string sss.
Input
The first line contains two integers nnn and k (1≤k≤n≤2⋅105)k\ (1≤k≤n≤2⋅10^5)k (1≤k≤n≤2⋅105) — the length of the string and the value of kkk.
The second line contains the string sss of length n consisting only of lowercase Latin letters.
Output
Print a single integer xxx — the level of the string.
Examples
input
8 2
aaacaabb
output
2
input
2 1
ab
output
1
input
4 2
abab
output
0
Note
In the first example, we can select 222 non-intersecting substrings consisting of letter ‘a’: “(aa)ac(aa)bb”, so the level is 222.
In the second example, we can select either substring “a” or “b” to get the answer 111.
题意
给出一个长度为nnn的字符串,在字符串中查找连续出现kkk次的字母,中间不能有重叠,连续出现kkk次的字母最多出现了几次
AC代码
暴力查找即可,注意k=1k=1k=1的情况
#include <stdio.h>
#include <string.h>
#include <iostream>
#include <algorithm>
#include <math.h>
#include <limits.h>
#include <map>
#include <stack>
#include <queue>
#include <vector>
#include <set>
#include <string>
#include <time.h>
#define ll long long
#define ull unsigned long long
#define ms(a,b) memset(a,b,sizeof(a))
#define pi acos(-1.0)
#define INF 0x7f7f7f7f
#define lson o<<1
#define rson o<<1|1
#define bug cout<<"-------------"<<endl
#define debug(...) cerr<<"["<<#__VA_ARGS__":"<<(__VA_ARGS__)<<"]"<<"\n"
const double E=exp(1);
const int maxn=1e6+10;
const int mod=1e9+7;
using namespace std;
char ch[maxn];
int a[maxn];
bool cmp(int a,int b)
{
return a>b;
}
int main(int argc, char const *argv[])
{
ios::sync_with_stdio(false);
int n,k;
cin>>n>>k;
cin>>ch;
int res=1;
for(int i=0;i<n;i++)
{
if(k==1)
a[ch[i]-'a']++;
else
{
if(ch[i]==ch[i+1])
res++;
else
res=1;
if(res==k)
{
a[ch[i]-'a']++;
res=1;
i+=1;
}
}
}
sort(a,a+26,cmp);
cout<<a[0]<<endl;
return 0;
}
Codeforces 1105B:Zuhair and Strings(字符串水题)的更多相关文章
- 1222: FJ的字符串 [水题]
1222: FJ的字符串 [水题] 时间限制: 1 Sec 内存限制: 128 MB 提交: 92 解决: 20 统计 题目描述 FJ在沙盘上写了这样一些字符串: A1 = “A” A2 = ...
- 1001 字符串“水”题(二进制,map,哈希)
1001: 字符串“水”题 时间限制: 1 Sec 内存限制: 128 MB提交: 210 解决: 39[提交][状态][讨论版] 题目描述 给出一个长度为 n 的字符串(1<=n<= ...
- 第十一届“蓝狐网络杯”湖南省大学生计算机程序设计竞赛 B - 大还是小? 字符串水题
B - 大还是小? Time Limit:5000MS Memory Limit:65535KB 64bit IO Format: Description 输入两个实数,判断第一个数大 ...
- Educational Codeforces Round 7 B. The Time 水题
B. The Time 题目连接: http://www.codeforces.com/contest/622/problem/B Description You are given the curr ...
- Educational Codeforces Round 7 A. Infinite Sequence 水题
A. Infinite Sequence 题目连接: http://www.codeforces.com/contest/622/problem/A Description Consider the ...
- Codeforces Testing Round #12 A. Divisibility 水题
A. Divisibility Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/597/probl ...
- Codeforces Beta Round #37 A. Towers 水题
A. Towers 题目连接: http://www.codeforces.com/contest/37/problem/A Description Little Vasya has received ...
- codeforces 677A A. Vanya and Fence(水题)
题目链接: A. Vanya and Fence time limit per test 1 second memory limit per test 256 megabytes input stan ...
- CodeForces 690C1 Brain Network (easy) (水题,判断树)
题意:给定 n 条边,判断是不是树. 析:水题,判断是不是树,首先是有没有环,这个可以用并查集来判断,然后就是边数等于顶点数减1. 代码如下: #include <bits/stdc++.h&g ...
- HDU ACM 1073 Online Judge ->字符串水题
分析:水题. #include<iostream> using namespace std; #define N 5050 char a[N],b[N],tmp[N]; void Read ...
随机推荐
- Ubuntu16.04下安装sublime text3
通过ppa安装,打开终端,输入以下命令: sudo add-apt-repository ppa:webupd8team/sublime-text-3 sudo apt-get update sudo ...
- Oracle数据库TNS错误解决方法
ORA-12154: TNS:could not resolve the connect identifier specified ,即无法解析指定的连接 标识符.这说明缺少了一个环境变量,TNS_A ...
- springMVC控制器,处理器,映射器,适配器
前端控制器DispatcherServlet <!--定义spring mvc 的前端控制器Servlet --><servlet> <!--Servlet的名称--&g ...
- method.invoke()s
在框架中经常会会用到method.invoke()方法,用来执行某个的对象的目标方法.以前写代码用到反射时,总是获取先获取Method,然后传入对应的Class实例对象执行方法.然而前段时间研究inv ...
- vue 路由(1)
路由的使用 (5步) 1.首先安装路由 npm install vue-router2.引入 vue-router import VueRouter from 'vue-router' 3.使用 ...
- ansible-play中关于标签tages,handler,notify的使用
--- - hosts: webser remote_user: root tasks: - name: install httpd package yum: name=httpd tages: in ...
- C++算法之大数加法计算的代码
如下代码段是关于C++算法之大数加法计算的代码,希望对大家有用. { int length; int index; int smaller; int prefix = 0; if(NULL == sr ...
- 声明一个set集合,使用HashSet类,来保存十个字符串信息,然后通过这个集合,然后使用iterator()方法,得到一个迭代器,遍历所有的集合中所有的字符串;然后拿出所有的字符串拼接到一个StringBuffer对象中,然后输出它的长度和具体内容; 验证集合的remove()、size()、contains()、isEmpty()等
package com.lanxi.demo1_3; import java.util.HashSet; import java.util.Iterator; import java.util.Set ...
- 远程桌面服务当前正忙,因此无法完成您尝试执行的任务-win2008R2
远程桌面服务当前正忙,因此无法完成您尝试执行的任务,近来我服务器出现这情况, 到达主机房看主机...不可以登陆,也没有登陆框.只能关机. 在微软找到的原因是:Csrss.exe 进程和某些应用程序 ( ...
- 实现自适应位置--footer紧贴浏览器底部
<!DOCTYPE HTML><html><head><meta charset="utf-8"><title>紧贴浏览 ...