摘要: 解法: 不含前导0,那么最开始dfs的时候可以把最高位之前那位设为11,这样的话最高位的数选取不受限制,还要注意的就是枚举到当前位的时候数是不是已经大于0。 1 #include<cstdio> 2 #include<iostream> 3 #include<cstring> 4 #include<algorithm> 5 #define N 20 6 using namespace std; 7 typedef long long ll; 8 ll dp[N][N]; 9 int bit[N];10 ll dfs(int pos,int st, 阅读全文
posted @ 2013-03-09 14:49 silver__bullet 阅读(618) 评论(0) 推荐(0) 编辑
摘要: 解法: 数据范围很小,其实直接暴力就行,但是刚开始学数位dp,所以还是dp了一下,学习了一下数位dp的dfs写法,感觉简洁明了,但是要注意细节。 dp[i][0]:前i位不含不吉利数的个数。 dp[i][1]:前i位不含不吉利数且i+1位是6的个数。 dp[i][2]:前i位含不吉利数的个数。 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 #define N 10 5 using namespace std; 6 int bit[N]; 7 int dp[N][3]; 8 9 i 阅读全文
posted @ 2013-03-09 14:44 silver__bullet 阅读(2297) 评论(0) 推荐(1) 编辑