bzoj1260[CQOI2007]涂色paint
2016-10-09 20:52
369 查看
思路:区间dp,用f[i][j]表示区间[i,j]的答案,然后转移即可。
View Code
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> using namespace std; char s[100]; int f[100][100]; int main(){ scanf("%s",s+1);int n=strlen(s+1); for (int i=1;i<=n;i++) f[i][i]=1; for (int len=2;len<=n;len++){ for (int l=1;l<n;l++){ int r=l+len-1;if (r>n) break; f[l][r]=min(f[l][r-1]+!(s[r]==s[r-1]),f[l+1][r]+!(s[l]==s[l+1])); if (s[l]==s[r]) f[l][r]=min(f[l][r],min(f[l+1][r],f[l][r-1])); if (l+1<=r-1) if (s[l]==s[r]) f[l][r]=min(f[l+1][r-1]+1,f[l][r]); if (s[l]!=s[r]) for (int k=l; k<r; k++) f[l][r]=min(f[l][r],f[l][k]+f[k+1][r]); } } printf("%d\n",f[1] ); return 0; }
View Code
相关文章推荐
- bzoj千题计划185:bzoj1260: [CQOI2007]涂色paint
- BZOJ1260[CQOI2007]涂色paint (区间DP)
- [CQOI2007][BZOJ1260] 涂色paint
- 【BZOJ 1260】[CQOI2007]涂色paint
- BZOJ 1260: [CQOI2007]涂色paint
- bzoj1260: [CQOI2007]涂色paint
- bzoj 1260: [CQOI2007]涂色paint 区间动态规划
- BZOJ 1260: [CQOI2007]涂色paint 区间DP
- BZOJ 1260: [CQOI2007]涂色paint【区间DP】
- [bzoj 1260][CQOI 2007]涂色paint
- bzoj1260 [CQOI2007]涂色paint
- [BZOJ 1260][CQOI2007]涂色paint 题解(区间DP)
- bzoj1260 [CQOI2007]涂色paint 区间DP
- BZOJ 1260: [CQOI2007]涂色paint( 区间dp )
- bzoj 1260: [CQOI2007]涂色paint
- 【bzoj1260】[CQOI2007]涂色paint
- 【DP】BZOJ 1260: [CQOI2007]涂色paint
- BZOJ1260: [CQOI2007]涂色paint
- BZOJ1260: [CQOI2007]涂色paint
- 【bzoj1260】【CQOI2007】【涂色paint】【dp】