随笔分类 - 刷题中
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1502题目大意:找出总的满足条件的字符串数,num(a)=num(b)=num(c)且任何前缀均满足num(a)>=num(b)>=num(c)解题思路:用dp[i][j][k]表示a取i个,b取j个,c取k个的状态下最多有多少种满足条件的情况,容易推得状态转移方程如下:dp[i][j][k]=dp[i-1][j][k](i>j时)+dp[i][j-1][k](j>k时)+dp[i][j][k-1](k>0时)根据该状态转移方程即可输出最后的结果dp[n][n][n]因
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1230水题模拟一道,主要考验代码能力,刷完题就感觉自己还是太弱了。 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 char a[100],b[100]; 8 int L,now,prime[27],A[26],B[26]; 9 bool f[100]; 10 void init() 11 { 12 int k,N=1,j=4; 13 memset(f,f...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1203解题思路:简单的01背包,用dp[i]表示花费不超过i时的最大可能性状态转移方程 dp[i]=1-(1-dp[i-a])*(1-p) 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 #define N 10001 8 int n,m; 9 double dp[N];10 int main()11 {12 int i,a,j;13 double p,pp;14 ...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1175解题思路:从出发点开始DFS。出发点与终点中间只能通过0相连,或者直接相连,判断能否找出这样的路径。 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 #define N 1005 8 #define M 1005 9 int map[N][M],n,m;10 bool vis[N][M],ok;11 int move[4][2]={{1,0},{-1,0},{0,1},{0,-1}}
阅读全文

浙公网安备 33010602011771号