每日一题:队列之和
题目
给你两个队列a和b,问你能否构造出给定的队列c。
Solutuon
很经典的动态规划,dp[i][j] 表示第一个队列的前 i 个数和第二个队列的第 j 个数能否组成第三个队列的前 i+j 个数。状态转移方程:dp[i][j]=(dp[i−1][j] and a[i]==c[i+j] or dp[i][j−1] and b[j]==c[i+j])。
Code
1 | #include <bits/stdc++.h> |
给你两个队列a和b,问你能否构造出给定的队列c。
很经典的动态规划,dp[i][j] 表示第一个队列的前 i 个数和第二个队列的第 j 个数能否组成第三个队列的前 i+j 个数。状态转移方程:dp[i][j]=(dp[i−1][j] and a[i]==c[i+j] or dp[i][j−1] and b[j]==c[i+j])。
1 | #include <bits/stdc++.h> |
Update your browser to view this website correctly.&npsb;Update my browser now