codevs2980买帽子
来源:互联网 发布:如何安装网络驱动程序 编辑:程序博客网 时间:2024/05/17 02:40
将每个字符串翻转后得到一个新的字符串,再与原串找最长公共子序列就行了
(话说我竟然卡在了字典序的问题上良久,还是string好搞,用char的时候打渣了WA了几次,就不想用它了)
#include <cstdio>#include <iostream>#include <cstring>#include <algorithm>using namespace std;int dp[1000][1000];struct strin{ string s; int num;}a[50000];bool cmp(strin a,strin b){ if(a.num != b.num ) return a.num >b.num ; return a.s < b.s;}int main(){ int n; scanf("%d",&n); for(int i = 1 ; i <= n ; i ++) { memset(dp,0,sizeof(dp)); cin>>a[i].s; int lena = a[i].s.length(); string ss; for(int j = 0; j < lena ; j ++) { ss[lena-j-1] = a[i].s[j]; } for(int j = 1; j <= lena ; j ++) { for(int k = 1; k <= lena; k ++) { if(ss[j-1] != a[i].s[k-1]) dp[j][k] = max(max(dp[j-1][k],dp[j][k-1]),dp[j-1][k-1]); else dp[j][k] = max(max(dp[j-1][k],dp[j][k-1]),dp[j-1][k-1]+1); } } a[i].num = dp[lena][lena]; } sort(a+1,a+1+n,cmp); for(int i = 1; i <= n; i ++) { cout <<a[i].s <<endl; } return 0;}
1 0
- 【codevs2980】买帽子
- codevs2980买帽子
- 【codevs2980】买帽子 动态规划
- 买帽子
- 买帽子
- 买帽子
- 2980 买帽子
- code vs 买帽子
- Codevs 2980 买帽子
- CDOEVS 2980 买帽子
- 百度笔试- 买帽子
- 牛客网 买帽子
- [编程题] 买帽子
- [编程题] 买帽子
- 【算法题】买帽子
- 校招真题 百度 买帽子
- [编程题] 买帽子
- 买帽子 (hash)
- Java集合之AbstractSet
- Supermap通过地图URL地址返回其地图中的经度和纬度
- BOM简介
- C++11:POD数据类型
- jsp中静态包含和动态包含的区别与联系
- codevs2980买帽子
- Binary441ArrangingCoins
- 第九周 项目4:广义表算法库及应用(2)
- c++学习笔记,控制台应用程序问题
- 基于testng+appium的APP UI自动化并行执行平台
- 关于CPU平台的一些常识
- 杂谈:推销保险手法
- CentOS 七 vs CentOS 6的不同
- MVC 模式