然而我又更新博客了。
Week 3 Friday && Week4 Monday
- HDU 1011
树形DP - ACdream 1417
求小于等于n的,能被k整除的数字p,要求p的字典序最小。
对于相同长度的数字p,肯定是10000****这样的形式字典序最小。
所以对于每个长度,只要求出100...00+100...00%p就可以了。
稍微注意一下边界。 - ACdream 1242
bfs输出路径 - HDU 1007
平面上n个点,求最近点对。
最近点对是一个经典算法。
暴力\(O(n^2)\)承受不了的话,考虑分治。把所有点按照x坐标分成大小大概相等的两部分,分治解决左右部分。最近点对只有三种情况:两个点都出现在左侧部分、右侧部分或者一个在左一个在右。所以我们分别得到左侧部分的最近点对答案\(ans1\),右侧部分的答案\(ans2\),并取\(ans=min(ans1,ans2)\)。那么对于以分界线为中心,左右长度分别为\(ans\)的一段区域内,考虑这个区域内部所有点,一个在左一个在右的情况只有可能出现在这个区域里。把这个区域里的所有点按照y排序,那么按顺序检查两两之间的距离即可,如果距离已经超过当前的最小距离,就break掉。
这里可以用抽屉原理证明对于每一个点,最多检查这个点相邻的六个点就可以了。 - ZOJ 3343
代码题。待做。 - ZOJ 3346
这种题其实我不会。证明结论就好了。 - ZOJ 3348
给定一堆操作,逆序模拟要求的点就可以了。 - ZOJ 3349
和sgu326一样。网络流可以用来判断方案是否能够合理安排。 - ZOJ 3351
逗你玩。
wsc500原创,转载请注明出处。请注明 出自http://www.cnblogs.com/loveidea/