摘要: "Description" 思路 一开始dp列得乱七八糟,看了题解才知道原来可以设以每个位置为起点的期望。 设dp[i]为以位置i为起点期望天数。可得dp[i] = 1 + $p_i$dp[i] + $(1 p_i)$dp[1] dp[n + 1] = 0,答案为dp[1]。 推一推公式求出dp[1 阅读全文
posted @ 2020-04-02 21:17 limil 阅读(167) 评论(0) 推荐(0) 编辑
摘要: "Description" 思路 首先根据奇偶性,0和2所在位置的奇偶性相同,1和3所在位置奇偶性相同。故0和2的个数与1和3的个数相同或相差1。如果不满足就NO。 由于3的左右两边必须是2;1的左右两边可以是0或2。所以先放3,计算所需的最少2的个数,如果2个数不够,就NO,否则把2放满3的左右两 阅读全文
posted @ 2020-04-02 21:08 limil 阅读(144) 评论(0) 推荐(0) 编辑
摘要: "Description" 思路 先用dp打表发现x出现个数是按奇数和偶数分别降序。因此可以分开奇数偶数列分开二分。 事实上如果x是i的二进制前缀,那么x就可以通过f(i)获得,即x在i的path里。 所以x的出现个数就是小于等于n中以x为二进制前缀的个数。x为偶数时还要加上x+1的个数。细节详见代 阅读全文
posted @ 2020-04-02 13:50 limil 阅读(139) 评论(0) 推荐(0) 编辑
摘要: "Description" 思路 题目中关键之处是必须先要把所有城堡都攻打下来,因此可以使用贪心。重要事实:对于城堡 i ,越到后面占领越好,因为越到后面兵力越足够。 每一个城堡对应一个它最远城堡,这样每一个城堡前面都有多个可占领的城堡。每攻打下一个城堡,就把能占领的城堡都占领了;当人手不够时,按照 阅读全文
posted @ 2020-04-02 13:12 limil 阅读(140) 评论(0) 推荐(0) 编辑