摘要:给你一个边界h,w; 有n个障碍物,有障碍物的地方不能走。马走日字,问左上到右下有多少种路径。 做法:dp[i]表示不走过其他点的到这个点的路径数。 所以转移方程就有,这个点的值等于全部路径,减去,在它之前的所有障碍点到这个点的路径。因为对于每一个障碍点,都是第一次到达障碍点,所以后面只要计算全部路
阅读全文
摘要:给n个人,长度l,人的速度是v1,车的速度是v2,一次车乘k个人。问全都送到目的地的最短时间。 对一个人,要坐车就连着做,然后剩余的时候都在走。 那么,去目的地就是t1,回来就是(v2*t1-v1*t1)/(v1+v2); 然后加上趟数,就能算出来,在一个人要乘这么多时间的车的时候,需要的最少时间。
阅读全文
摘要:说是找椭球面上的 到原点距离最近的点。 感觉像是有个单调性,然后,点的范围是正负100以内。 第一次学习模拟退火,觉得就是个搜索,在现在确定的一个方向中去搜索。当然,方向越多搜索越精确,但是时间会变慢,这种概率算法还是不要轻易写的为好......
阅读全文
摘要:从左上角到右下角,问最少几步能到。 有传送门:大写字母之间可以互相传送。 坑点是,有一个点从一个跳到另一个,那么不能标记进入的门。 也就是说只要标记道德那个地方就行了。
阅读全文
摘要:把一个父亲数组变成棵树的最小改动。 一想就只有环或者森林,用时间戳,每次爆搜就行,要么剖环,要么连树。
阅读全文
摘要:题意是:给你n和k,一个老鼠从左上角开始走,每次可以往一个方向走1~k中的任何一个值,但是每一步必须比前一步的值大,问获取的最多的值是多少? 简单记忆化搜索,dp[i][j]表示当前位置能获取的最大值,但是要注意,考虑全所有的情况才能用记忆化搜索,只要没有后效性,大部分dfs,我觉得理论上都能用记忆
阅读全文