摘要: 题意:一个二进制的数,如果0的个数大于1的个数,那么我们称这个数为Round Numbers,求给定区间(十进制表示)中Round Numbers的个数 题解:数位dp,不过这里枚举的时候lead标记就有作用了(前导零,也是为了防止状态的冲突) ac代码: Limit 以及 lead 两个参数都是为 阅读全文
posted @ 2018-02-03 15:36 猪突猛进!!! 阅读(115) 评论(0) 推荐(0)
摘要: 题意:For a decimal number x with n digits (AnAn-1An-2 ... A2A1), we define its weight as F(x) = An * 2n-1 + An-1 * 2n-2 + ... + A2 * 2 + A1 * 1. Now you 阅读全文
posted @ 2018-02-03 09:13 猪突猛进!!! 阅读(132) 评论(0) 推荐(0)
摘要: 约束:数位上不能出现连续的两个1(11、112、211都是不合法的) 假设就是[1,210]这个区间的个数 状态:dp[pos][pre]:当前枚举到pos位,前面一位枚举的是pre(更加前面的位已经合法了),的个数(我的pos从0开始) 先看错误的方法计数,就是不判limit就是直接记忆化 那么假 阅读全文
posted @ 2018-02-03 09:04 猪突猛进!!! 阅读(126) 评论(0) 推荐(0)