2013年4月24日
摘要: 大意:给定一个整数n,找到最小的n的倍数m,m只能有0/1组成。思路:给定如图的二叉树,沿着路径一直搜索即可,初始条件为1,然后不断的在后面加0或者1,直到找到n的倍数为止。其中,余数相同的可以不再扩展。 1 / \ / \ / \ 10 11 / \ / \ / \ / \ 100 101 110 111View Code #include <iostream>#include <cstdlib>#include <cstdio>#include ... 阅读全文
posted @ 2013-04-24 21:56 Buck Meister 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 大意:在10X10的正方形的房间内,给定一个顶点,每次走到新的点,然后告诉你离这个新的点的距离是近还是远,让你求可能的范围。思路:过两点做线段的中垂线,然后求直线的半平面交即可。注意:当字符串为Same的时候,以后的输出全都为0.00.View Code /*半平面交,加一个矩形框限定区域*/#include <iostream>#include <cstdlib>#include <cstdio>#include <string>#include <cstring>#include <cmath>#include < 阅读全文
posted @ 2013-04-24 15:51 Buck Meister 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 大意:给定一张M条边的无向带权图,求从起点S到终点E恰好经过K条边的最短路径。2<=M<=100,2<=K<=1000000。保证每个连边的点度至少为2.思路:参见2008国家集训队论文day1 《矩阵乘法在信息学中的应用》俞华程。设计一个相似的动态规划的算法:g[i][j] = ∑g[i-1][k]·G[k][j]其中g[i][j]表示有多少通过i条边的路径能到达点j。同样,我们可以重新定义矩阵乘法为:C[i][j] = min(A[i][k]·B[k][j]).(1<=k<=b)其中 · 代表A矩阵和B矩阵进行一次Floyd 阅读全文
posted @ 2013-04-24 12:45 Buck Meister 阅读(132) 评论(0) 推荐(0) 编辑