Wang Xifeng's Little Plothttp://acm.hdu.edu.cn/showproblem.php?pid=5024预处理出每个点八个方向能走的最远距离,然后枚举起点,枚举方向,每走一步都要枚举左转和右转的情况,因为预处理好了,所以可以直接算出来。 1 #include 2...
分类:
其他好文 时间:
2014-09-21 11:59:10
阅读次数:
304
一道好枚举+模拟题目。转换思维视角
这道题是我做的,规模不大N
但仔细一分析发现对每个点进行全部八个方向的遍历100X100X100^8 。100X100个点,每个点在走的时候8中选择,TLE
于是改为另一个角度:
以符合要求的点为拐弯点,朝两个垂直的方向走,求出最远的距离。这样只要对每个点各个方向的长度知道,组合一下对应的就OK。
避免了每个点深搜。
PS:搜索的时候x,y写...
分类:
其他好文 时间:
2014-09-21 01:21:09
阅读次数:
415
http://acm.hdu.edu.cn/showproblem.php?pid=5024
分析:预处理每个点在八个方向的射线长度,再枚举八种L形状的路,取最大值。
注意题意是求一条最长路,要么一条直线,要么只有一个90角,即L型。其实直线就是L形的一个方向长度为0。
代码:
#include
#include
#include
#include
#include
#include
#i...
分类:
其他好文 时间:
2014-09-20 22:25:39
阅读次数:
294
题目:1002 A Corrupt Mayor's Performance Art
题意:有一个长度 n 的序列,初始染色2,有两种操作,P x ,y ,z,区间x---y染色为z,另一种Q x,y,查询区间 x -- y 有几种颜色,并输出,注意会覆盖。
分析:跟POJ 2777一样,不过这个要输出颜色,所以线段树查询的时候顺便把路径存起来打印。代码:
AC代码:
#...
分类:
其他好文 时间:
2014-09-20 20:07:29
阅读次数:
333
题目:uva 10003 Cutting Sticks
题意:给出一根长度 l 的木棍,要截断从某些点,然后截断的花费是当前木棍的长度,求总的最小花费?
分析:典型的区间dp,其实和石子归并是一样的,花费就是石子的和,那么久不用多说了。
AC代码:
#include
#include
#include
#include
#include
#include
#in...
分类:
其他好文 时间:
2014-09-18 18:53:24
阅读次数:
201
Problem DescriptionYou are given a tree with N nodes which are numbered by integers 1..N. Each node is associated with an integer as the weight.Your t...
分类:
其他好文 时间:
2014-09-18 16:03:14
阅读次数:
325
题意:uva 10154 - Weights and Measures
题意:有一些乌龟有一定的体重和力量,求摞起来的最大高度、力量必须承受其上面包括自己的全部的重量。
分析:先按力量从小到大排序
然后定义dp【i】 表示摞起来 i 只乌龟的最小质量。
然后转移就是每次用遍历O(n)的负责度找最小的,然后记录,保存最大值即可。
AC代码:
#include
#i...
分类:
其他好文 时间:
2014-09-17 20:31:02
阅读次数:
224
2014 ACM/ICPC
Asia Regional Anshan Online
给N个点,M条边组成的图,每一步可以从一个点走到相邻任一点,概率相同,问D步后没走到过每个点的概率
概率DP 测试数据太水了。。。。10000*50*50*50都能过
加个vector优化到
#include "stdio.h"
#include "string.h"
#include "ve...
分类:
其他好文 时间:
2014-09-17 16:50:08
阅读次数:
219
2014 ACM/ICPC
Asia Regional Xi'an Online
对于N个数 n(1 ≤ n ≤ 5×104),
把N个数分成任意个区间,每个区间的值是该区间内不同数字个数的平方和,答案使和最小
DP思路,首先要对数据合并相连相同数字,然后离散化。
数据太弱了。。。。。
然后直接做N*N的DP竟然能AC。。。。比赛时候想到了。。。不敢写。。。
G++AC C++TL...
分类:
其他好文 时间:
2014-09-17 15:14:12
阅读次数:
203
思路:广搜, 因为空格加上动物最多只有32个那么对这32个进行编号,就能可以用一个数字来表示状态了,因为只有 ‘P’ 'S' 'M' '.' 那么就可以用4进制刚好可以用64位表示。接下去每次就是模拟了。 注意: ‘S’ 不是只有一个。 一个东西如果不是'P'在动的话要先判断周围有没有‘P...
分类:
其他好文 时间:
2014-09-17 10:12:12
阅读次数:
183