关注
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
string f(const string& str, int cur, int len, int minLen)
{
int m = 1;
string s = str.substr(cur, len);
//cout << s << endl;
for (int i = len + cur; i <= str.size()-len; i += len)
{
string tmp = str.substr(i, len);
//cout << tmp << endl;
if (s != tmp)
break;
++m;
}
int ret = str.size() - m*len + len + 3;
if (ret < minLen)
{
string tt(str.begin(), str.begin() + cur);
tt += to_string(m);
tt += '[';
tt += s;
tt += ']';
string tmp(str.begin() + cur + m*len, str.end());
tt += tmp;
return tt;
}
else
return "";
}
int main()
{
string str;
cin >> str;
int len = str.size();
if (len < 5)
{
cout << len << endl;
return 0;
}
int cur = 0;
int ret = len;
string newStr = str;
while (true)
{
bool changed = false;
for (int cur = 0; cur < str.size() - 4; ++cur)
{
//i位子串的长度
for (int i = 1; i <= str.size() / 2; ++i)
{
//cout << f(str, cur, i) << endl;
string ff = f(str, cur, i, ret);
if (ff != "")
{
ret = ff.size();
newStr = ff;
changed = true;
}
}
}
str = newStr;
if (!changed || str.size() < 5)
break;
}
cout << ret << endl;
}
查看原帖
点赞 5
相关推荐
沉淀小子:赚钱本来就是为了获取时间,陪伴家人的含金量对于恋家的人比一年多赚10几万可多了,人就活一次,选自己喜欢的,根本不丢人。酷毙了
点赞 评论 收藏
分享
03-19 10:36
云南大学 C++ 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 春招/暑实第一面是哪家? #
29279次浏览 307人参与
# 军工所铁饭碗 vs 互联网高薪资,你会选谁 #
6245次浏览 32人参与
# 巨人网络春招 #
10891次浏览 164人参与
# 腾讯音乐求职进展汇总 #
159946次浏览 1100人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
185694次浏览 1103人参与
# 小红书求职进展汇总 #
226305次浏览 1351人参与
# MiniMax求职进展汇总 #
21191次浏览 273人参与
# 硬件人秋招的第一个offer #
122288次浏览 1453人参与
# 实习到现在,你最困惑的一个问题 #
31176次浏览 271人参与
# 如果重来一次你还会读研吗 #
229000次浏览 2009人参与
# 网易游戏笔试 #
6071次浏览 83人参与
# 职能管理面试记录 #
10392次浏览 57人参与
# 把自己当AI,现在最消耗你token的问题是什么? #
6148次浏览 151人参与
# 正在春招的你,也参与了去年秋招吗? #
361700次浏览 2628人参与
# 硬件应届生薪资是否普遍偏低? #
108127次浏览 601人参与
# 简历中的项目经历要怎么写? #
308439次浏览 4094人参与
# 工作中遇到的歹人 #
96267次浏览 535人参与
# 我的AI电子员工 #
34096次浏览 223人参与
# 校招笔试 #
461351次浏览 2943人参与
# AI时代,哪些岗位最容易被淘汰 #
60861次浏览 642人参与
# 你怎么看待AI面试 #
178435次浏览 1085人参与
# 如何一边实习一边找下家? #
40181次浏览 349人参与