- 博客(8)
- 资源 (2)
- 收藏
- 关注
转载 一种变进制数及其应用(全排列之Hash实现)
我们经常使用的数的进制为“常数进制”,即始终逢p进1。例如,p进制数K可表示为 K = a0*p^0 + a1*p^1 + a2*p^2 + ... + an*p^n (其中0 它可以表示任何一个自然数。对于这种常数进制表示法,以及各种进制之间的转换大家应该是很熟悉的了,但大家可能很少听说变进制数。这里我要介绍一种特殊的变进制数,它能够被用来实现全排列的Hash函数,并且该Hash函数能够实
2010-04-07 11:58:00 268 1
原创 PKU 3233 Matrix Power Series
总的思想就是二分,求矩阵的高次幂需要用到二分的思想,然后,求矩阵幂的和,再用一次二分。 S = A^1 + A^2 + ... + A^k 如果k是奇数,则S = (A^1 + A^2 + ... + A^(k / 2)) + A^((k + 1) / 2) + A^((k + 1) / 2) * ((A^1 + A^2 + ... + A^(k / 2)) ) = A
2010-04-06 17:09:00 410 2
原创 PKU 1067 取石子游戏
题目是中文,意思简单明了,不在赘述。 其实,就是一个Wythoff Game。根据wiki上面的介绍就能求解。 Optimal StrategyAny position in the game can be described by a pair of integers (n, m) with n ≤ m, describing the size of both piles i
2010-04-06 13:43:00 319 1
原创 PKU 1977 Odd Loving Bakers
题目的意思是,只有chalk的数量是奇数的Baker,才有机会成为winner,而且,成为winner的Baker才有机会按照自己的 favorite baker list,改变其他人的chalk的数量。 可以把开始的状态,看成是一个行向量, 且向量中的元素不是0就是1,因为题目只与奇偶性相关。 则在第1次celebration后,会有 B1 = B1 * A + B1 = B1
2010-04-06 11:27:00 309 2
原创 PKU 3735 Training little cats
这道题的思想很简单,其实,就是将线性转换的关系,用一个转换矩阵来表示。 由于置0还有交换操作,在线性代数中,都有相应的操作相对应,见下面的3 4点 为了使得+1操作也有相应的操作相对应,只需要引入一只虚构的猫,使得加1的操作,就是加上最后一行 引入虚构的猫之后,就使得转移矩阵的大小为(n+1)*(n+1) 对于转移矩阵的构造,可以用如下方法:1.初始化一个(n+
2010-04-01 11:37:00 342 1
转载 快速幂的二分求法
long long qpow(int a, int b){ long long c, d; c = 1; //存a^b d = a; //存a的倍幂 while (b > 0) { if (b & 1) //或 if (b % 2 == 1) c *= d; b
2010-03-31 21:37:00 578 1
原创 When Does Caching Break Down
When program exhibit locality,caching works quite well.However,if programs exhibit bad locality,caching breaks down and the performance of the memory hierarchy is poor. In particular,object-orien
2008-05-24 13:35:00 234
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人