P3335-[ZJOI2013]蚂蚁寻路【dp】】的更多相关文章

题目描述 在一个 n*m 的棋盘上,每个格子有一个权值,初始时,在某个格子的顶点处一只面朝北的蚂蚁,我们只知道它的行走路线是如何转弯,却不知道每次转弯前走了多长. 蚂蚁转弯是有一定特点的,即它的转弯序列一定是如下的形式:右转,右转,左转,左转,右转,右转…左转,左转,右转,右转,右转.即两次右转和两次左转交替出现的形式,最后两次右转(最后两次一定是右转)后再多加一次右转.我们还知道,蚂蚁不会在同一个位置连续旋转两次,并且蚂蚁行走的路径除了起点以外,不会到达同一个点多次,它最后一定是回到起点然后结…
题目链接 bzoj3111: [Zjoi2013]蚂蚁寻路 题解 发现走出来的图是一向上的凸起锯齿状 对于每个突出的矩形dp一下就好了 代码 /* */ #include<cstdio> #include<algorithm> const int maxn = 127; inline int read() { int x = 0,f = 1; char c = getchar(); while(c < '0' || c > '9'){if(c == '-')f = -1…
Sol DP. 首先观察转折,画画图,看看移动路线,可以非常轻易的发现如果走到起点的下方是回不去的.. 然后它就相当于一个底部是平的,顶部凹凹凸凸的形状,每右转两次或左转两次就会形成小矩阵,这样就可以来DP了. 首先一个非常简单的思路,就是f[k][i][j]表示取到第j列高度为h最大权值,枚举上一个转折点,复杂度 \(O(n^5k)\) 因为上一个点一定是与他同一行的,枚举行,枚举次数,枚举列,枚举高度,枚举上一个位置的列,枚举上一个位置的行. 我们可以优化,让他一次DP一行,其实可以发现就是…
题目描述 Description在一个 n*m 的棋盘上,每个格子有一个权值,初始时,在某个格子的顶点处一只面朝北的蚂蚁,我们只知道它的行走路线是如何转弯,却不知道每次转弯前走了多长.蚂蚁转弯是有一定特点的,即它的转弯序列一定是如下的形式:右转,右转,左转,左转,右转,右转…左转,左转,右转,右转,右转.即两次右转和两次左转交替出现的形式,最后两次右转(最后两次一定是右转)后再多加一次右转.我们还知道,蚂蚁不会在同一个位置连续旋转两次,并且蚂蚁行走的路径除了起点以外,不会到达同一个点多次,它最后…
这题强呀……打了10+30暴力之后苦想1h并不会做……于是去看题解.看题解的时候又莫名各种看错,结果看了好久才懂……记录一下血泪史吧. 这题不难发现走出来的图形就是一个高低高低的城堡型图案,命名为高峰跟低谷的话就是一共有k个低谷和k + 1个高峰,且交替出现.发现其实这个图形是由2 * k + 1个矩形所构成的,我们考虑将这样许多矩形看做转移的方向:f[i][j][p][h]代表以点(i, j)为左下角,当前枚举到的是第p个矩形,且高度为(i - h + 1)所能获得的最大权值. 转移方程: \…
正题 题目链接:https://www.luogu.com.cn/problem/P3335 题目大意 给出\(n\times m\)的网格,每个格子有权值.一个回路在格子的边上,要求有\(2\times k\)次左转,其他都是右转,且最后\(2\)次一定得是右转. 求包含的格子权值和最大. \(1\leq n,m\leq 100,0\leq k\leq 10\) 解题思路 看起来很像插头\(dp\)对吧,但是因为最后两下得是右转所以不是插头\(dp\). 画一下不难发现包围出来的图形的底部一定…
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2023 题意: 有n个家族,共m只蚂蚁(n <= 1000, m <= 100000). 每个家族有cnt[i]只蚂蚁,并且同一家族中的蚂蚁无差别. 从窝里爬出来x只蚂蚁的方案数为f(x). 给定a,b,让你求 ∑ f(a to b) MOD 1000000. 题解: 表示状态: dp[i][j] = combinations i:第i个家族已经考虑过了 j:目前出来了j只蚂蚁 找出答案…
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem 10983 18765 Y 1036 [ZJOI2008]树的统计Count 5293 13132 Y 1588 [HNOI2002]营业额统计 5056 13607 1001 [BeiJing2006]狼抓兔子 4526 18386 Y 2002 [Hnoi2010]Bounce 弹飞绵羊 43…
Oct,22ed,2018 DAY -18 又是颓废的一天呢 我好菜啊,一个圆方树弄了一整天(点双怎么那么毒瘤).(铁人两项怎么那么多点) Oct,23rd,2018 DAY -17 又双叒叕颓了一天 下午考了一个蜜汁模拟塞,全部都是历年T1,写的是时候出现了巨多问题,什么输入写挂啊,忘记初始化啊,双向边写成单项边啊,导致我比机房dalao多调了半个小时.(好在我最终的没有写挂.)先膜一下10分钟ak的lyj dalao.有好多机房dalao因为各种各样的原因没有ak.wzj dalao忘开lo…
POJ3046选蚂蚁创建集合 一个人的精力是有限的呢,如果一直做一件事迟早会疲惫,所以自己要把握好,不要一直埋头于一件事,否则效率低下还浪费时间 题目大意:一共有T(1,2...n为其种类)种蚂蚁,A个蚂蚁,问你从这T种蚂蚁中选取[S,B]个,可以构成多少个集合 dp[i][j]表示前i种蚂蚁我选j个可以构成集合的种数,与其说是dp不如说是递推 那么对于当前这个i我们是不是有两种决策1.一个都不选所得到的决策值是dp[i-1][j]2.至少选一个那么决策值就是dp[i][j-1] 后续的先不管,…