2013年6月9日

uva825 - Walking on the Safe Side(动规)

摘要: 动规, 记忆化搜索。。。。思路不难状态:dp[i][j]表示点(I,j)到终点的最短路径数目;状态转移:dp[i][j] = dp[i+1][j]+dp[i][j+1];还有就是这道题的测试数据很操蛋,两个数之间不是规律的有一个空格,有可能有多个空格,我卡到这一点上wa了好几次。所以说读取的时候要用字符串读取。代码如下;#include #include #define M 105 #define N 105 int m, n, a[N][N], d[N][N]; char s[N]; int dp(int x, int y) { int &ans = d[x][y]; i... 阅读全文
posted @ 2013-06-09 22:53 Primo... 阅读(145) 评论(0) 推荐(0) 编辑

uva620 - Cellular Structure(....)

摘要: 这道题跟动规没一毛钱的关系啊,我实在找不到状态转移,找不到记忆化搜索。。。用dfs写的代码。。。跑了19ms代码如下:#include #include #define N 105 char s[N]; char ans[4][20] = {"MUTANT","SIMPLE","FULLY-GROWN","MUTAGENIC"}; int dfs(int a, int b) { if(s[a]=='A'&&a==b-1) return 1; if(s[b-2]=='A' 阅读全文
posted @ 2013-06-09 21:01 Primo... 阅读(112) 评论(0) 推荐(0) 编辑