Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
线性动规,
f10[i]表示到10*i为止花费的最小费用。
读题会发现其实赛车只会走10的整数倍的距离。
对此,有些量需要缩小十倍,以保证空间复杂度不至于过高。

Gravatar
Czb。
积分:1754
提交:406 / 867
記憶化搜索

Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
认为是很麻烦的DP,情况太多,交了好多次才过,哎。
关键还是水平不到家啊,其中有好几次读入处理都出了错误。

Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
贪心,不管横竖,选择最大的先切(有相等无所谓,当有几个相等的最大值时,随便选一个)
完事儿,AC。

Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
自主构图+最小生成树,
因为用邻接矩阵存的图(似乎用邻接表构图会很麻烦……),
再加上图是一个不折不扣的稠密图(本来就是完全图),
用的普里姆算法。(克鲁斯卡尔算法适用于稀疏图,用邻接表的图)。
这里普里姆是用的“不完全”队列操作实现的,感觉应该是普里姆算法中最简单最快的实现方法了。

题目 512 扩散 AAAAAAAAAA
2011-11-09 08:31:20
Gravatar
苏轼
积分:1621
提交:460 / 1205
找题解,上http://paulinsider.at.ua/news/ppg/2011-11-08-8,快,稳,准,大牛的选择!!
用prim

题目 512 扩散 AAAAAAAAAA
2011-11-09 08:26:17
Gravatar
reamb
积分:1034
提交:198 / 556
神棍的容斥原理

题目 513 八 AAAAAAAAAA
2011-11-08 21:37:53
Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
线性(过全)或区间型(过不全)动归:
状态:(过不全)
f[i][j]表示从i开始的j个数分配的最小机房数。
状态:(过全)
f[i]表示从首部到i为止的人分配的最小机房数。
加求和预处理,
AC。

题目 611 机房 AAAAAAAAAA
2011-11-08 19:47:07
Gravatar
11111111
积分:637
提交:170 / 399
表示很坑爹。。

题目 36 求和问题 AAAAAAAAAA
2011-11-08 19:23:28
Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
提供一个小发现:(本题用此方法全部正确)
pow(x,x)%moder==pow(x%moder,x%moder)
其实正规的算法应该是快速幂。(自己也不会)
n^m=n^(2^x1)*n^(2^x2)*...*n^(2^xn)
其中m=2^x1+2^x2+...+2^xn
例:
5^9=5^8*5^0*5^0*5^1
然后一个高精度加法,数值递推(推出来后是一个杨辉三角),我用的是十亿进制
搞定。

题目 604 方程 AAAAAAAAAA
2011-11-08 17:50:48
Gravatar
Yeehok
积分:390
提交:170 / 497
動規

题目 608 删数 AAAAAAAAAA
2011-11-08 17:05:50
Gravatar
Makazeu
积分:3005
提交:780 / 1516
貪心

题目 478 罪犯问题A AAAAAAAAAA
2011-11-08 16:38:40
Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
FLOYD可以过,听说可以用SPFA,只是自己不会用……
得到一个教训:int型矩阵(数组)中自己默认的最大值最好不要存0.5*(2^31-1)以上的数,不然在求和运算中都有可能出错。
自己设置的最大值根据用到运算种类的不同需要随时改变(数据间需要用到乘法运算时估计就得小于<根号下>(2^31-1)了)

Gravatar
苏轼
积分:1621
提交:460 / 1205
找题解,原程上:http://paulinsider.at.ua/news/sparty/2011-11-07-7,呵呵,稳,快,准,大牛的选择!

Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
区间型动归,类似于石子归并,不同于石子归并。
My方程状态:
f[i][j]表示从i开始的j个数的最大获利。
初始状态:f[i][1]
目标状态:f[1][n]
转移分三种情况:
1、全部直接拿出
2、除头一个或者末一个外的判定为已拿出,头一个或者末一个单独拿出。
3、除第二种情况,将从i开始的j个数分成两部分(好多种情况),两部分一部分判定为已拿出,另一部分为要拿出的。
听说某个什么什么取数和本题很像,找时间去做做。

题目 608 删数 AAAAAAAAAA
2011-11-07 21:56:51
Gravatar
reamb
积分:1034
提交:198 / 556

题目 606 燃烧 AAAAAAAAAA
2011-11-07 19:25:45
Gravatar
Makazeu
积分:3005
提交:780 / 1516
動態規劃。F[i,j]表示前i個、后j個數的最大值。 詳細: http://yeefanzhu.blogspot.com/

题目 608 删数
2011-11-07 19:16:42
Gravatar
Makazeu
积分:3005
提交:780 / 1516
動態規劃,F[i] 前i個牛花費的最小時間

Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
石子归并的变种,代码其实都一模一样,只需要在输入时稍作处理即可。
二维的O(n3)DP,状态为:f[i][j]表示从i开始的j堆书合并所需的最小代价。
第三维枚举分界点。具体的也不好解释,总之石子归并还是要好好复习啊。

题目 485 整理书本 AAAAAAAAAA
2011-11-07 16:15:20
Gravatar
Makazeu
积分:3005
提交:780 / 1516
我用字典樹(Trie Tree)。請看:http://yeefanzhu.blogspot.com/2011/10/trie-tree.html (需要翻牆)

题目 399 查字典
2011-11-07 14:50:59