UVa 10617 Again Palindromes / 记忆化搜索
2013-12-08 20:24
337 查看
删除若干个字母后 剩下的是回文串 求有多少个
记忆化搜索 dp[i][j]表示i j 之间有多少个 其实递推也可以的 long long
记忆化搜索 dp[i][j]表示i j 之间有多少个 其实递推也可以的 long long
#include <stdio.h> #include <string.h> long long dp[70][70]; char a[70]; long long n; long long dfs(long long l,long long r) { if(l > r) return 0; if(l == r) return 1; if(dp[l][r] != -1) return dp[l][r]; long long ret = 0; if(a[l] == a[r]) { ret = dfs(l+1,r) + dfs(l,r-1) + 1; //ret = dfs(l+1,r) + dfs(l,r-1) - dfs(l+1,r-1)+ dfs(l+1,r-1) + 1; } else { ret = dfs(l+1,r) + dfs(l,r-1) - dfs(l+1,r-1); } dp[l][r] = ret; return ret; } int main() { long long t; scanf("%lld",&t); while(t--) { scanf("%s",a+1); n = strlen(a+1); memset(dp,-1,sizeof(dp)); printf("%lld\n",dfs(1,n)); } return 0; }
相关文章推荐
- UVa 10617 Again Palindromes / 记忆化搜索
- uva10617 - Again Palindrome(记忆化搜索)
- UVA 10617 Again Palindrome 又是回文 dp,记忆化搜索
- uva_10617_Again Palindrome(普通DP, 记忆化搜索)
- 回文串数dp(uvaAgain Palindromes )
- UVa 10651 Pebble Solitaire(DP 记忆化搜索)
- uva 11584 - Partitioning by Palindromes(dp)
- uva10276 hanoi tower troubles again
- UVA 11584 Partitioning by Palindromes——dp
- uva 10604 Chemical Reaction 记忆化搜索
- UVa 507 Jill Rides Again (贪心&最大连续子串和)
- UVA11584[Partitioning by Palindromes] 动态规划
- uva 10688 - The Poor Giant(记忆化搜索)
- UVa 10118 Free Candies(记忆化搜索经典)
- uva 10626 - Buying Coke(记忆化搜索)
- uva 401 Palindromes
- 【UVa】[401]Palindromes
- 100道动态规划——5 UVA 10118 Free Candies 记忆化搜索 以及 证明状态
- Uva 10617 Again Palindrome (区间DP+回文串)
- UVA - 10617 Again Palindrome