每日一题:队列之和
题目
给你两个队列$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 |
|
给你两个队列$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 |
|
Update your browser to view this website correctly.&npsb;Update my browser now