只有小写字母 那>=2600的直接找单字母串长度大于等于100的就可以了

<2600 的dp找最长回文串

 #include <iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<stdlib.h>
#include<vector>
using namespace std;
#define N 50010
char s[N];
char pa[];
int dp[][][],g,n,o[];
void dfs(int ss,int i,int j,int k)
{
if(ss==)
return ;
if(i==j)
{
pa[g++] = s[i];
return ;
}
if(i!=n-&&j&&s[i]==s[j]&&dp[i][j][k]==dp[i+][j-][k]+)
{ pa[g++] = s[i];
dfs(dp[i+][j-][k],i+,j-,k);
return ;
}
if(i!=n-&&dp[i][j][k]==dp[i+][j][k])
{
dfs(dp[i+][j][k],i+,j,k);
return ;
}
if(j&&dp[i][j][k]==dp[i][j-][k])
{
dfs(dp[i][j-][k],i,j-,k);
return ;
}
}
int main()
{
int i,j,d;
cin>>s;
int k = strlen(s);
n = k;
if(k>=)
{
for(i = ; i < k ; i++)
o[s[i]-'a']++;
for(i = ; i < ; i++)
if(o[i]>=)
{
d = i;
break;
}
for(i = ; i <= ; i++)
printf("%c",d+'a');
puts("");
}
else
{
for(i = ; i < k ; i++)
{
dp[i][i][] = ;
}
for(i = k- ; i >= ;i--)
for(j = i+ ; j < k ; j++)
{
if(s[i]==s[j])
{
dp[i][j][] = dp[i+][j-][]+;
dp[i][j][] = dp[i+][j-][]+;
}
dp[i][j][] = max(dp[i][j][],max(dp[i+][j][],dp[i][j-][])); dp[i][j][] = max(dp[i][j][],max(dp[i+][j][],dp[i][j-][]));
}
}
if(dp[][k-][]>=)
{
dfs(dp[][k-][],,k-,);
for(i = ; i < ; i++)
printf("%c",pa[i]);
for(i = - ; i >= ; i--)
printf("%c",pa[i]);
puts("");
}
else
{
dfs(dp[][k-][],,k-,);
for(i = ; i < g ; i++)
printf("%c",pa[i]);
if(dp[][k-][]%!=)
g--;
for(i = g- ; i >= ; i--)
printf("%c",pa[i]);
puts("");
}
return ;
}

MemSQL start[c]up Round 2 - online version(DP)的更多相关文章

  1. MemSQL start[c]up Round 2 - online version C. More Reclamation(博弈)

    题目大意 额,写来写去,我还是直接说抽象之后的题目大意吧: 有一个 r*2 的矩形,两个人轮流的在矩形上面减去一个 1*1 的小正方形,要求在减的过程中,不能使矩形“断开”,也就是说,如果一个人减去了 ...

  2. Saving James Bond - Easy Version (MOOC)

    06-图2 Saving James Bond - Easy Version (25 分) This time let us consider the situation in the movie & ...

  3. codeforces MemSQL start[c]up Round 2 - online version B 最长公共子系列

    题目链接:  http://codeforces.com/contest/335/problem/B 分析: 第一眼看上去串的长度为5*10^4, 冒似只能用O(n)的算法可解. 而这样的算法从来没见 ...

  4. Codeforces Global Round 7 D1. Prefix-Suffix Palindrome (Easy version)(字符串)

    题意: 取一字符串不相交的前缀和后缀(可为空)构成最长回文串. 思路: 先从两边取对称的前后缀,之后再取余下字符串较长的回文前缀或后缀. #include <bits/stdc++.h> ...

  5. Codeforces Beta Round #13 C. Sequence (DP)

    题目大意 给一个数列,长度不超过 5000,每次可以将其中的一个数加 1 或者减 1,问,最少需要多少次操作,才能使得这个数列单调不降 数列中每个数为 -109-109 中的一个数 做法分析 先这样考 ...

  6. Ping-Pong (Easy Version)(DFS)

    B. Ping-Pong (Easy Version) time limit per test 2 seconds memory limit per test 256 megabytes input ...

  7. Codeforces 1077F1 Pictures with Kittens (easy version)(DP)

    题目链接:Pictures with Kittens (easy version) 题意:给定n长度的数字序列ai,求从中选出x个满足任意k长度区间都至少有一个被选到的最大和. 题解:$dp[i][j ...

  8. Codeforces Global Round 1 - D. Jongmah(动态规划)

    Problem   Codeforces Global Round 1 - D. Jongmah Time Limit: 3000 mSec Problem Description Input Out ...

  9. hdu4908 &amp; BestCoder Round #3 BestCoder Sequence(组合数学)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4908 BestCoder Sequence Time Limit: 2000/1000 MS (Jav ...

随机推荐

  1. c#之委托和事件的区别

    1.什么是委托,这里就不做介绍了,如果想了解可以查看博客:http://www.cnblogs.com/xiaoxiaogogo/p/3571494.html 下面开始对事件进行介绍 1.定义事件以及 ...

  2. 论坛类应用双Tableview翻页效果实现

    作为一名篮球爱好者,经常使用虎扑体育,虎扑体育应用最核心的部分就是其论坛功能,无论哪个版块,论坛都是其核心,而其论坛部分的实现又别具一格,它以两个tableview的形式翻页滚动显示,而不是常见的那种 ...

  3. 1965: [Ahoi2005]SHUFFLE 洗牌 - BZOJ

    Description 为了表彰小联为Samuel星球的探险所做出的贡献,小联被邀请参加Samuel星球近距离载人探险活动. 由于Samuel星球相当遥远,科学家们要在飞船中度过相当长的一段时间,小联 ...

  4. 【转载】OpenStack Swift学习笔记

    免责声明:     本文转自网络文章,转载此文章仅为个人收藏,分享知识,如有侵权,请联系博主进行删除.     原文作者:崔炳华      原文地址:http://blog.csdn.net/i_ch ...

  5. trie树(前缀树)

    问题描述:   Trie树,即字典树,又称单词查找树或键树,是一种树形结构,是一种哈希树的变种.典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计.它的优 ...

  6. 【BZOJ】【1927】【SDOI2010】星际竞速

    网络流/费用流 比较简单的一题,对于每个星球,将它拆成两个点,然后二分图建模:左部结点与S相连,流量为1费用为0:右部结点与T相连,流量为1费用为0:对于每条航道x->y,连边x->y+n ...

  7. 剑指offer--面试题7

    //两个栈实现一个队列 #include<stack> //STL #include<iostream> using namespace std; template<cl ...

  8. 让32位Eclipse和64位Eclipse同时在64的Windows7上运行

    转自让32位Eclipse和64位Eclipse同时在64的Windows7上运行 参考这篇文章:http://wenku.baidu.com/view/57994c270066f5335a81214 ...

  9. http://www.yihaomen.com/article/java/302.htm

    http://www.yihaomen.com/article/java/302.htm

  10. 前台将勾选的多个属性放到一个value里面,是一个字符串,传到后台

    jq function changeStreet(a){ var valk=$(a).html(); $(a).parents(".select_box").children(&q ...