Codeforces Round #427 (Div. 2) D
来源:互联网 发布:mac 10.12.6 编辑:程序博客网 时间:2024/06/06 06:37
本题是个简单的区间dp
最近都没时间做题了,被我妈强制喊回去,然后颓废了10天(回家也没发控制住自己= = 我的锅),计划都打乱了,本来还报名了百度之星,然后没时间参加
#include<cmath>#include<map>#include<iostream>#include<cstring>#include<cstdio>#include<set>#include<vector>#include<queue>#include<stack>#include<algorithm>using namespace std;typedef long long ll;const int N = 5e3+5;#define MS(x,y) memset(x,y,sizeof(x))#define MP(x, y) make_pair(x, y)const int INF = 0x3f3f3f3f;char s[N];int dp[N][N];int ans[N];int main() { while(~scanf("%s", s+1)) { int n = strlen(s + 1); memset(dp, 0, sizeof(dp)); memset(ans, 0, sizeof(ans)); for(int i = 1; i <= n; ++i) { for(int j = 1; j+i-1 <= n; ++j) { int l = j; int r = j+i-1; if(l == r) dp[l][r] = 1; else if(s[l] == s[r]) { if(dp[l+1][r-1]) { int tt = (l+r-1) / 2; dp[l][r] = dp[l][tt] + 1; } else if(l == r - 1) dp[l][r] = 2; } } // for(int j = 1; j+i-1 <= n; ++j) printf("%d->%d: %d ", j,j+i-1,dp[j][j+i-1]); printf("\n"); } for(int i = 1; i <= n; ++i) { for(int j = i; j <= n; ++j) { ans[dp[i][j]] ++; } } for(int i = n; i >= 1; --i) { ans[i] += ans[i + 1]; } for(int i = 1; i <= n; ++i) { if(i != 1) printf(" "); printf("%d", ans[i]); } printf("\n"); } return 0;}
阅读全文
0 0
- Codeforces Round #427 (Div. 2) C D
- Codeforces Round #427 (Div. 2) D
- Codeforces Round #427 (Div. 2) A B C D
- Codeforces Round #427 (Div. 2)-D(记忆化搜索)
- Codeforces Round #427 (Div. 2) D. Palindromic characteristics dp
- Codeforces Round #427 (Div. 2) A—D题
- Codeforces Round #427 (Div. 2) D.Palindromic characteristics
- Codeforces Round #427 (Div. 2) C,D,E
- Codeforces Round #103 (Div. 2) D
- Codeforces Round #104 (Div. 2) D
- Codeforces Round #105 (Div. 2) D
- Codeforces Round #139 (Div. 2) D. Snake
- Codeforces Round #155 (Div. 2) D-rats
- Codeforces Round #159 (Div. 2) D sum
- Codeforces Round #184 (Div. 2) D、E
- Codeforces Round#186(Div 2) D
- codeforces Round # 187(Div.2) D
- Codeforces Round #191 (Div. 2) D
- 最简单网络编程之客户端往服务器端送东西02
- 计蒜课-判断质数
- UIScrollView内容偏移的问题
- [编程题] 等差数列
- Redis总结
- Codeforces Round #427 (Div. 2) D
- 常用正则表达式
- poj1019组合数学
- 【HDU 6129 Just do it】& 数学推导
- NFS
- 【备忘】徐老师hadoop hbase zookeeper spark kafka大数据视频教程
- js 中const, var, let的区别
- 【转载】SSH框架搭建和整合(struts2、spring4、hibernate5)基础
- Java设计模式之策略模式