首页 > 其他分享 >洛谷T226686 长度为2的子串

洛谷T226686 长度为2的子串

时间:2023-04-16 21:46:49浏览次数:38  
标签:子串 输出 洛谷 T226686 int 字符串 长度 输入

题目描述

给你一个长度为 n 的由大写的英文字母组成的字符串,请你找出出现频率最高的长度为2的子串。

输入格式

包括两行。第一行是一个正整数n,表示字符串长度。第二行是长度为n的大写英文字母组成的字符串。(2<=n<=100)

输出格式

包括一行。一个长度为2的字符串,该字符串为输入字符串的子串,在输入字符串中出现次数最多。若有多个出现频率相同且最高的子串,输出第一次出现的那个子串。

输入输出样例

输入输出样例

输入 #1
7
ABACABA

输出 #1 AB 题解
  首先按照题目要求输入字符串的长度和字符串。然后利用两个for循环计算出现频率最高的长度为2的子串。从第一个字符开始,和其他每一个字符比较。当一个字符(位置为i)对比到不是它本身时(i≠j),如果a[i]=a[j],
并且a[i+1]=a[j+1]时,说明找到一个多次出现的长度为2的字符串,那么计数(t)加一,当计数大于之前的最大计数值(m),那么t将成为新的最大计数值(t=m),并将i的值记录下来。每当外层循环进行完一次,将t清零。最后
输出出现次数最多的长度为2的字符串。
代码
#include <iostream>

using namespace std;

int main()
{
    int n;
    string a;
    int i,j,t=0,m=0,x;
    cin>>n>>a;
    for(i=0;i<n-1;i++)
    {
        for(j=0;j<n-1;j++)
        {
            if(i!=j)
            {
                if((a[i]==a[j])&&(a[i+1]==a[j+1])) t++;
            }
            if(t>m)
            {
                m=t;
                x=i;
            }

        }
        t=0;
    }
    cout<<a[x]<<a[x+1];
    return 0;
}

 

标签:子串,输出,洛谷,T226686,int,字符串,长度,输入
From: https://www.cnblogs.com/dachi7/p/17324059.html

相关文章

  • #yyds干货盘点# LeetCode面试题:最小覆盖子串
    1.简述:给你一个字符串s、一个字符串t。返回s中涵盖t所有字符的最小子串。如果s中不存在涵盖t所有字符的子串,则返回空字符串""。 注意:对于t中重复字符,我们寻找的子字符串中该字符数量必须不少于t中该字符数量。如果s中存在这样的子串,我们保证它是唯一的答案。......
  • 【rmq】洛谷P7333
    题目:P7333[JRKSJR1]JFCA-洛谷|计算机科学教育新生态(luogu.com.cn)分析:用rmq处理出各个区间长度的最大值,然后在二分区间长度找到答案(最开始想的是开长度为n的数组,对位置i的数,分别找1-(i-1)和(i+1)-n中的离i最近满足条件的位置,然后更新结果,但一直wa,还没找到问题,存疑吧)代码:......
  • 洛谷 P3292 [SCOI2016]幸运数字
    https://www.luogu.com.cn/problem/P3292多次询问求一条链取若干点的最大异或和考虑一个集合的最大异或和可以求出线性基完成,两个集合的线性基可以合并,但是线性基并没有可减性,于是我们求lca的时候只能每次往集合里添加一条链,为了保证复杂度只能用倍增做。std::vector<i64>......
  • 华为OD机试 最左侧冗余覆盖子串
    本期题目:最左侧冗余覆盖子串题目给定两个字符串s1和s2和正整数K,其中s1长度为n1,s2长度为n2,在s2中选一个子串,满足:该子串长度为n1+k该子串中包含s1中全部字母,该子串每个字母出现次数不小于s1中对应的字母,我们称s2以长度k冗余覆盖s1,给定s1,s2,k,求最左侧的s2以长度k冗余覆盖......
  • w1 洛谷T233243
      主要思路就是计算每一个长度为2的子串出现的次数,计数的同时用数组记录次数,打擂台找到出现次数最多的子串,首字符出现的位置就是数组的下标。最后输出出现最多的子串。代码如下:#include<bits/stdc++.h>usingnamespacestd;intcnt[100];intmain(){ intn,max=-1; ......
  • 洛谷P2415 集合求和(数学问题,使用集合子集求和公式)
    可以知道对于一个有n个数据的集合,其子集个数有2^n个至于证明可以这样理解,对于n个数据,其子集就是对数据进行组和,而对于每个位置上的数据,组合时仅有两种状态即有此数据或无此数据,也就是有两种可能,而对于n个数据,就有2^n种可能不妨设其中一个非空数据X,对于X,依据X可以将子集划分为两......
  • 洛谷与 Codeforces 的难度评级
    为了比较CF与洛谷的题目难度评级,我写了一个爬虫,爬取了CF题目在源站和洛谷中的难度,并进行比较。这里先给出两者的换算:洛谷入门普及-普及/提高-普及+/提高提高+/省选-省选/NOI-NOI/NOI+/CTSCCF800900-11001200-15001600-19002000-23002400-29003000-350......
  • 洛谷P1308统计单词数,strtok函数的使用以及对于单词分割的一些思考
    [NOIP2011普及组]统计单词数题目描述一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文章中出现的次数和第一次出现的位置。注意......
  • 1234. 替换子串得到平衡字符串
    题目链接:1234.替换子串得到平衡字符串方法:同向双指针解题思路若可以通过「替换一个子串」的方式,使原字符串s变成一个「平衡字符串」,则说明子串外任意字符的数量\(s≤n/4\),否则一旦有一个字符的数量大于\(n/4\),那么不论如何替换,必定有另一个字符的数量小于\(n/4......
  • 无重复字符的最长子串
    题目描述难度中等给定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。示例1:输入:s="abcabcbb"输出:3解释:因为无重复字符的最长子串是"abc",所以其长度为3。示例2:输入:s="bbbbb"输出:1解释:因为无重复字符的最长子串是"b",所以其长度为1......