摘要: 一道思维题,我们先找到最大值,因为这个必须要在其中一组中,之后判断两边 注意当最大值在中间的时候有可能是同一组答案 #include<iostream> #include<algorithm> #include<cstring> #include<cstdio> #include<map> #inc 阅读全文
posted @ 2020-04-14 22:33 朝暮不思 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 一道经典的数位dp,我们想要知道各个数分别是多少,不如通过枚举,每次判断一个数。 这题需要判断前导0,我们是否判断前导0的原因就是要看这个0会不会对答案产生影响 这题我们要求0的个数,显然必须判断前导0,例如windy数,前后差值的关系,显然也要判断 但是像数字游戏这类问题就不需要判断,因为不影响 阅读全文
posted @ 2020-04-14 15:01 朝暮不思 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 这道题需要知道该数是不是数字之和的倍数 数字之和比较好统计,但是有个问题是,每一次进行运算的时候,因为数一直在变化,所以当前数mod数字之和成不成立与之后的没有关系 所以我们考虑枚举模数,因为数字之和本来也没有多大 这样我们只需要在最后判断一下答案就行 #include<iostream> #inc 阅读全文
posted @ 2020-04-14 14:33 朝暮不思 阅读(156) 评论(0) 推荐(1) 编辑
摘要: 这道题因为要求的是第k大的魔鬼数 所以我们可以采用二分的方法,用k-1来二分,这样就可以找到最左边的>=k的,也就是第k大 之后是数位dp,题目要求的是666,因此我们考虑用两位表示前一位填p1,前前位填p2。剩下的还要保存在这个数之前是否已经存在魔鬼数,这便与边界判断数是否成立,还有一维是老套路, 阅读全文
posted @ 2020-04-14 13:40 朝暮不思 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 这道题是一道思维+组合计数的题目 题目给了两个操作,我们发现第一个操作并不改变奇偶,但是可以把相同奇偶的数变成同一个数,第二个数可以改变相邻数的奇偶性 这样就是一个经典问题了,问每次改变相邻两个数的奇偶性,能不能将所有的数变成奇偶性相同的。 答案就是,只要在这个区域内,奇数和偶数的个数不都为奇数就行 阅读全文
posted @ 2020-04-14 10:20 朝暮不思 阅读(144) 评论(0) 推荐(0) 编辑