[HNOI2010]公交线路】的更多相关文章

Description 小Z所在的城市有N个公交车站,排列在一条长(N-1)km的直线上,从左到右依次编号为1到N,相邻公交车站间的距 离均为1km. 作为公交车线路的规划者,小Z调查了市民的需求,决定按下述规则设计线路: 1.设共K辆公交车,则1到K号站作为始发站,N-K+1到N号台作为终点站. 2.每个车站必须被一辆且仅一辆公交车经过(始发站和 终点站也算被经过).  3.公交车只能从编号较小的站台驶往编号较大的站台.  4.一辆公交车经过的相邻两个 站台间距离不得超过Pkm. 在最终设计线…
由数据范围容易想到矩阵快速幂和状压. 显然若要满足一辆公交车的相邻站台差不超过p,则每相邻p个站台中每辆车至少经过一个站台.可以发现这既是必要的,也是充分的. 开始的时候所有车是相邻的.考虑每次把一辆公交车塞到前方第一个未到达的站台.这个时候公交车之间是没有区别的,因为只要保证每相邻p个站台每辆车都出现也即有k辆车就可以了. 于是设f[i][j]为i-p+1~i的车站停靠状况为j的方案数.并且表示i站台状况的这一位必为1,j中一共有k个1.于是状态数至多有C(9,4)=126种.转移比较显然,只…
题目 发现\(n\)比较大,但是\(k,p\)都很小,考虑矩乘使得复杂度倾斜一下 发现所有车的最大间隔都是\(p\),还保证\(k<p\),于是我们可以考虑压下最后\(p\)位的情况 于是设\(dp[i][S]\)表示目前最远的车来到了\(i\)位置,最后\(p\)为是否有车的状态是\(S\),\(0\)表示没车,\(1\)表示有车 转移的话我们就使得某一辆车提前就好了,注意如果\(i-p+1\)有车的话,提前的只能是这辆车了 代码 #include<cstdio> #include&l…
题面 luogu 题解 矩阵快速幂\(+dp\) 其实也不是很难 先考虑朴素状压\(dp\) \(f[i][S]\) 表示最慢的车走到了\(i\),\([i, p+i-1]\)的覆盖情况 状态第一位一定是\(1\) 那么显然\(f[i][S] = \sum f[i-1][S']\)(\(S'\)能转移到\(S\)) 什么情况能转移呢? 假如:\(S1->S2\) \(S1\)去掉第一位,再在后面补\(0\),产生的新数和\(S2\)至多只有一个差异 \(n\)很大,所以矩阵优化一下 先把合法的状…
标签:状态压缩+矩阵快速幂. 题解: 首先看范围,p<=10,那么我们可以想到状态压缩.我们把从一个长度为10的区间进行压缩,1代表可以,那么当值一个区间的1的个数为k个,我们就认为他是合法的.要注意这里所定义的区间,是有起点的,但是没有记下来,因为没有必要.然后我们就可以想一下状态是怎么转移的.那么可行的状态有多少种呢?C(9,4)种. 然后两种状态是否能够转移是需要我们判断的,我们每次转移时只能移动一个公共汽车,并且是移动最前面的汽车,这样就可以避免重复统计的情况了前面说道区间是有起点的,那…
[BZOJ2004][Hnoi2010]Bus 公交线路 Description 小Z所在的城市有N个公交车站,排列在一条长(N-1)km的直线上,从左到右依次编号为1到N,相邻公交车站间的距离均为1km. 作为公交车线路的规划者,小Z调查了市民的需求,决定按下述规则设计线路: 1.设共K辆公交车,则1到K号站作为始发站,N-K+1到N号台作为终点站. 2.每个车站必须被一辆且仅一辆公交车经过(始发站和终点站也算被经过).  3.公交车只能从编号较小的站台驶往编号较大的站台.  4.一辆公交车经…
[BZOJ2004][HNOI2010]Bus 公交线路 题面 bzoj 洛谷 题解 $N$特别大$P,K$特别小,一看就是矩阵快速幂+状压 设$f[S]$表示公交车状态为$S$的方案数 这是什么意思呢? 其实就是表示一个位置是否是公交车最后停靠的位置的状态 剔除无效状态后大约只有$125$左右的状态 直接存矩阵里快速幂转移就好了 #include<iostream> #include<cstdio> #include<cstdlib> #include<cstr…
<!doctype html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="initial-scale=1.0, user-scalable=no, wi…
一.公交线路详情检索 获取公交线路的详情主要分来两步,1.获取公交线路的Uid,2.通过Uid获取公交线路详情. 1.获取公交线路的Uid: /* * 获得公交线路图的Uid,并且根据系Uid发起公交线路详情的检索 * * @see * com.baidu.mapapi.MKSearchListener#onGetPoiResult(com.baidu.mapapi * .MKPoiResult, int, int) */ @Override public void onGetPoiResult…
济南最新公交线路一览(BRT) 济南BRT1路 高速公交线路 黄岗路东5:30-21:30 全福立交桥西5:30-21:30 票价1元,刷卡9折,月票有效 高速公交公司 去程:黄岗路东(BRT) - 交通学院(BRT) - 西苑小区(BRT) - 无影山路(BRT) - 无影山东路(BRT) - 长途汽车站(BRT) - 东工商河路(BRT) - 三孔桥(BRT) - 生产路北口(BRT) - 北关北路(BRT) - 历黄路(BRT) - 东泺河路(BRT) - 历山路(BRT) - 车站北街(…