Codeforces - 1073A - Diverse Substring
题目大意
给你一个字符串 s
,求是否存在一个子串 sub_str
。满足 sub_str
中每个字母出现的次数都 <=strlen(sub_str)
。
解析
这个题目一开始没有读懂,导致 wa
了挺多次,也是稍微有一些技巧,直接转换成判断相邻两个是否相同即可,如果任意两个都相等的话,就没有存在这样的子串。如果存在,就输出相邻的两个即可。
#include <bits/stdc++.h>
const int MAX = 26;
int main(int argc, char const **argv)
{
std::ios::sync_with_stdio(false);
std::cin.tie(0);
int n, c[MAX];
std::cin >> n;
char* str = new char[n];
std::cin >> str;
for(int i = 0; i < n-1; i++){
if(str[i] != str[i+1]){ // 找到任意一个相邻的即可
std::cout << "YES" << std::endl;
std::cout << str[i] << str[i+1] << std::endl;
return 0;
}
}
std::cout << "NO" << std::endl;
return 0;
}
题目链接
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论