关注
#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e6 + 10;
int dp[26][26], n;
char str[maxn];
void update()
{
int e1 = str[0] - &(3315)#39;a';
int e2 = str[strlen(str)-1] - &(3316)#39;a';
int len = strlen(str);
for(int i = 0;i <= e1;i++)
for(int j = 25;j >= e2;j--)
{
if(e1 == e2 && dp[e1][e2] > 0) // 插入
dp[i][j] = dp[i][j] + len;
else // 拼接
dp[i][j] = max(dp[i][j], dp[i][e1] + len + dp[e2][j]);
}
}
int main()
{
scanf("%d", &n);
for(int i = 0;i < n;i++)
{
scanf("%s", str);
update();
}
printf("%d\n", dp[0][25]);
}
时间复杂度O(n)
查看原帖
点赞 评论
相关推荐
牛客热帖
更多
正在热议
更多
# 为了入行xx岗,我学了__ #
7227次浏览 115人参与
# 你都见过什么样的草台班子? #
10170次浏览 82人参与
# 简历第一个项目做什么 #
8248次浏览 123人参与
# 被说“做题家”,你的反应是_____? #
3040次浏览 104人参与
# 实习的你做了哪些离谱的工作 #
11232次浏览 126人参与
# Prompt分享 #
3362次浏览 91人参与
# 26届校招投递进展 #
586303次浏览 3774人参与
# 找实习记录 #
39741次浏览 583人参与
# 工作压力大,你会干什么? #
15187次浏览 334人参与
# 从哪些方向判断这个offer值不值得去? #
48705次浏览 342人参与
# AI让你的思考变深了还是变浅了? #
5798次浏览 146人参与
# 找工作前vs找工作后的心路变化 #
37301次浏览 301人参与
# 多益网络求职进展汇总 #
62233次浏览 281人参与
# 如果不上班,你会去做什么 #
8354次浏览 295人参与
# 入职以后才知道的校招谎言 #
117239次浏览 747人参与
# 大家每天通勤多久? #
75464次浏览 537人参与
# 今年秋招还有金九银十吗 #
71427次浏览 502人参与
# 邪修省钱套路 #
8475次浏览 268人参与
# 校招入职后的感受 #
466563次浏览 3629人参与
# 如果让你发明个APP,你会想做什么 #
2527次浏览 58人参与