摘要: https://codeforces.com/problemset/problem/1804/D 解题思路 每个楼层是独立的,考虑怎么解决一层就可以了。 求最大值就是尽量避免1和1合并,也就是尽量在不存在连续1的子序列中进行合并,如果还有需要合并的就只能用1和1合并。求最小值就是尽量合并1和1。由于 阅读全文
posted @ 2023-04-07 22:50 冯文健 阅读(82) 评论(0) 推荐(0)
摘要: https://codeforces.com/contest/1793/problem/D 解题思路 依次找出 MEX = 1..n+1的序列数量就能得解。 MEX = n+1 只有全序列这一种情况。 MEX = 1时,找出两个序列中1的位置,较小位置左边的元素构成的子序列,较大位置右边的元素构成的 阅读全文
posted @ 2023-04-06 12:41 冯文健 阅读(61) 评论(0) 推荐(0)
摘要: https://codeforces.com/contest/1783/problem/D 解题思路 比较直白的动态规划问题。记 f[i][j] 表示前 i 个元素组成以 j 结尾的序列可能的数量。那么,当第 i+1 个元素加入序列的时候有两种选择:加上第 i 个元素;减去第 i 个元素。 于是可以 阅读全文
posted @ 2023-04-06 10:46 冯文健 阅读(65) 评论(0) 推荐(0)
摘要: https://codeforces.com/problemset/problem/1795/E 解题思路 问题的核心是要构造有一个先严格递增,然后严格递减的子序列。不在这个序列中的怪物单独击杀。先递增后递减可以看作是两个对称的问题,所以把递增序列的构造考虑清楚就可以了。 假设已经知道将1~i-1构 阅读全文
posted @ 2023-04-05 23:20 冯文健 阅读(56) 评论(0) 推荐(0)
摘要: https://codeforces.com/problemset/problem/1796/D 解题思路 最大子序列问题的变种。记 f[i][j][p] 表示当前i个元素中有j个元素增加x时,以i结尾并且包含p个元素增加x的子序列的最大值。 f[i][j][p] = max(f[i-1][j-1] 阅读全文
posted @ 2023-04-05 22:19 冯文健 阅读(93) 评论(0) 推荐(0)