Magic Numbers 题意:给定长度不超过2000的a,b;问有多少个x(a<=x<=b)使得x的偶数位为d,奇数位不为d;结果mod 1e9+7; 直接数位DP;注意在判断是否f[pos][mod] != -1之前,要判断是否为边界,否则会出现重复计算; #include<bits/stdc
分类:
其他好文 时间:
2016-02-22 15:46:51
阅读次数:
171
https://www.zhihu.com/question/27478597 插入模式下ctrl-y,重复当前光标上一行的字符 gd 高亮当前词 cc 删除当前行并插入 “.” 这个 mark 代表最后一次修改的地方,所以 `. 可以跳到最后一次修改的地方,'. 可以跳到最后一次修改的那一行。 g
分类:
系统相关 时间:
2016-02-22 11:58:41
阅读次数:
201
新的一周^w^ 2.22 cf 628d Magic Numbers 自己的状态定义错了 应该是 dp[i][j][0] 前 i 位 有一位是小于的,dp[i][j][1] 前 i 位都是相同的 1 #include<cstdio> 2 #include<cstring> 3 #include<io
分类:
其他好文 时间:
2016-02-22 08:56:46
阅读次数:
230
题目链接:点击打开链接
题意:给一个m一个d, 一个字符串a和b, 问在[a,b]范围内, 有多少个可以整除m的魔法数, 魔法数的定义是, 偶数位上都是d, 奇数位上都不是d。
思路:据说是典型的数位DP, 以前没做过数位DP, 感觉和DP差不多?
用d[i][j][p]表示当前到了第i位, 余数为j, p == 1表示目前和b串相等, p == 0表示已经比b串小了。 每次枚举第i位上放...
分类:
其他好文 时间:
2016-02-22 00:27:52
阅读次数:
163
题目链接 给两个数m, d. 两个数a, b。 a, b长度小于2000, 长度相等。求在a, b之间的数x, x%m==0, 并且从高位往低位数, 奇数位的数全部不等于d, 偶数为的数全都等于d, 求这样的数的个数。 数位dp, 通常的都是从后往前dfs, 但是这个题因为有第二个条件, 所以应该从
分类:
其他好文 时间:
2016-02-21 11:29:05
阅读次数:
201
A Magic Lamp 题意:不能改变数字序列的顺序,从n个数中删除m个,输出删除后最小的数;(m<n<=1000)输出忽略前导0; 分析:这道题其实数据范围可以达到1e6;看很多人的题解都是ST或者是RMQ,其实是一道单调栈的题;O(n)的算法。 简单讲讲单调栈的思想:要求的是删除后最小的,那么
分类:
其他好文 时间:
2016-02-15 22:37:54
阅读次数:
221
思路1:树状数组+离线处理,对所有的w离散化处理,边dfs边使用树状数组更新左右w的情况。思路2:主席树,边bfs边建树。结点信息存储cnt,然后在线查询。树状数组。 1 /* 4605 */ 2 #include <iostream> 3 #include <sstream> 4 #include
分类:
其他好文 时间:
2016-02-15 00:49:43
阅读次数:
228
Magic SquaresIOI'96 Following the success of the magic cube, Mr. Rubik invented its planar version, called magic squares. This is a sheet composed of
分类:
移动开发 时间:
2016-02-14 16:45:18
阅读次数:
275
题意 假设一个正整数y满足 将随意正整数x放到y的左边得到的数z满足 z%y==0 那么这个数就是个Magic Number 给你一个范围 求这个范围内Magic Number的个数 令 l表示y的位数 ly=10^l 那么z=x*ly + y 要z%y==0 easy看出 仅仅需 x*ly%y==
分类:
其他好文 时间:
2016-02-09 18:52:57
阅读次数:
201
来源JDK源码,产生的数字分布很均匀 用法代码如下。 # -*- coding: utf-8 -*- HASH_INCREMENT = 0x61c88647 def magic_hash(n): for i in range(n): nextHashCode = i * HASH_INCREMENT
分类:
其他好文 时间:
2016-02-01 14:49:49
阅读次数:
167