关注
#include <iostream>
#include <string>
using namespace std;
string helper(string str) {
if (str.size() <= 4) {
return str;
}
for (int i = 0; i < str.size(); ++i) {
for (int j = str.size() - 1; j > i; --j) {
if (str[j] != str[i]) continue;
int k = 0;
while (j + k < str.size() && str[i + k] == str[j + k]) ++k;
string base = str.substr(i, k);
int len = j - i;
if (len % k != 0) continue;
int num = len / k + 1;
if (3 + k >= j - i + k) continue;
int n = num - 1;
while (--n) {
if (base == str.substr(i + n*k, k)) continue;
else break;
}
if (n != 0) continue;
else {
string res = str.substr(0, i);
string numstr = to_string(num);
res += numstr;
res += '[';
string next = helper(base);
res += next;
res += ']';
res += str.substr(j + k);
return res;
}
}
}
}
int main() {
string str;
cin >> str;
if (str.size() <= 4) {
cout << str.size() << endl;
return 0;
}
cout << helper(str).size() << endl;
system("pause");
return 0;
}
查看原帖
点赞 3
相关推荐
06-25 18:26
辽宁大学 实施工程师 点赞 评论 收藏
分享
06-27 16:20
华东师范大学 Web前端 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 26届校招投递进展 #
26798次浏览 215人参与
# 烟草笔面经互助 #
16726次浏览 180人参与
# 现代汽车前瞻技术研发急速编程挑战赛 #
7353次浏览 96人参与
# 为了找工作你花了哪些钱? #
26671次浏览 256人参与
# 你今年的保底offer是哪家 #
117989次浏览 536人参与
# 你觉得技术面多长时间合理? #
96379次浏览 707人参与
# 你觉得专业和学校哪个对薪资影响最大 #
61172次浏览 488人参与
# kpi面有什么特征 #
51937次浏览 402人参与
# 牛友们,签完三方你在忙什么? #
98065次浏览 852人参与
# 听到哪句话就代表面试稳了or挂了? #
170629次浏览 1367人参与
# 如何缓解入职前的焦虑 #
192148次浏览 1338人参与
# 打工人的精神状态 #
49131次浏览 856人参与
# 查收我的offer竞争力报告 #
189395次浏览 1265人参与
# 通信/硬件公司求职体验 #
121480次浏览 860人参与
# 选完offer后,你后悔学本专业吗 #
46205次浏览 234人参与
# 你秋招想去哪些公司 #
21396次浏览 796人参与
# 你后悔选择现在的专业吗 #
83741次浏览 676人参与
# 机械人春招想让哪家公司来捞你? #
344359次浏览 3078人参与
# 外包能不能当跳板? #
34179次浏览 214人参与
# 牛友的志愿填报指南 #
26814次浏览 167人参与
# 地方国企笔面经互助 #
31052次浏览 105人参与