Codeforces--977B--Two-gram

该博客讨论了如何在给定的由大写字母组成的字符串中找到出现次数最多的连续两个字符(Two-gram)。通过给出的例子解释了问题,并提供了输入输出描述,以及一个简单的暴力解题策略。
摘要由CSDN通过智能技术生成

题目描述:
Two-gram is an ordered pair (i.e. string of length two) of capital Latin letters. For example, “AZ”, “AA”, “ZA” — three distinct two-grams.

You are given a string s consisting of n capital Latin letters. Your task is to find any two-gram contained in the given string as a substring (i.e. two consecutive characters of the string) maximal number of times. For example, for string s = “BBAABBBA” the answer is two-gram “BB”, which contained in s three times. In other words, find any most frequent two-gram.

Note that occurrences of the two-gram can overlap with each other.
输入描述:
The first line of the input contains integer number n (2≤n≤100) — the length of string s. The second line of the input contains the string s consisting of n capital Latin letters.
输出描述:
Print the only line containing exactly two capital Latin letters — any two-gram contained in the given string s as a substring (i.e. two consecutive characters of the string) maximal number of times.
输入:
7
ABACABA
5
ZZZAA
输出:
AB
ZZ
题意:
对于字符串 s = “BBAABBBA” ,应当输出的答案是 “BB” 。其在 s 中被包含了三次。换句话来说,找到出现次数最为频繁的 Two-gram 。
请注意,Two-gram 在字符串中的出现是可以重叠的。
题解
用个标记数组记录以下,然后直接暴力
代码:

#include<cstdio>
#include<cstring>
#include<algorithm>
#include
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值