摘要: 图很小,考虑状压dp。每一个位置只与前面一个位置的dp值有关,因此可以使用滚动数组优化空间。因为每一个方块的放置最多影响到下一行往右两个的位置,所以mask大概可以开到25位,空间是比较吃紧的,所以使用哈希表进行存储达到空间上的优化。 状压dp一向是挺难写的,对代码能力要求较高,具体见代码吧。。 阅读全文
posted @ 2019-04-05 16:46 Myrcella 阅读(121) 评论(0) 推荐(0)
摘要: 前50分显然是非常水的。甚至能用搜索过。 这道题显然就是一道dp。状态也非常显然: 表示考虑到横坐标为i的位置高度为j的最小跳跃次数。转移分两种情况: 不跳,直接从前一个位置掉下来: 跳:枚举所有比j低且与j高度差为x[i-1] k倍(k为正整数)的高度h: 特别注意当j=m时需要特判 显然,第一种 阅读全文
posted @ 2019-04-05 16:35 Myrcella 阅读(144) 评论(0) 推荐(0)
摘要: 首先需要明确的是括号序列合法的条件: 如果令左括号为1,右括号为-1,为这个1 -1序列到第i个位置的前缀和,那么必须保证对于每一个i,的值都是非负的,且 这道题首先想到的是dp的做法。 表示考虑到第i个位置左括号与右括号差为0的情况。转移也是非常简单的。但时间空间似乎都是不太行的。因为dp状态跑不 阅读全文
posted @ 2019-04-05 16:11 Myrcella 阅读(217) 评论(0) 推荐(0)