bzoj
silentsaber~
晨意微寒秋渐深,侧畔无事俏佳人
展开
-
bzoj1007[HNOI2008]水平可见直线
还记得做过一道简单的题:给出很多直线(给定斜率和在y轴上的截距),求可见直线的数量。那道题比较简单,n^2的枚举就可以过,就是对每条直线维护一个区间[l,r],只要[l,r]不为空,这条直线就能被看见。这里差不多也是求可见直线这里数据是50000条,n^2是肯定不能过的.考虑把直线按k升序排列对于一条直线i-1和一条直线i,因为k是升序排列,它们交点原创 2016-03-02 09:23:06 · 405 阅读 · 0 评论 -
bzoj1040[骑士] 环型森林(树形dp)
http://www.lydsy.com/JudgeOnline/problem.php?id=1040不得不说,我真是太蒟蒻了。拿到这道题毫无办法,想过把成环的单独取出来找最优解,或者像并查集一样搞搞,发现总有一些bug。然后这道题的图很诡异,是一些环(可能没有)和散边组成的森林。然后有人说是仙人掌- -事实证明我之前的思想是可行的,但是在处理上不行。每个环独原创 2016-03-08 10:47:26 · 491 阅读 · 0 评论 -
bzoj3597方伯伯运椰子
http://www.lydsy.com/JudgeOnline/problem.php?id=3597运呀运呀运椰子QAQ听说是分数规划,然后就先去学了一发,顺便水了一发poj2728.(先吐槽:马丹,题面好长啊)然后,贴上分析历程:每条边u->v建立 bi+di表示往这边多跑一次流量和运费都增加 最多inf 反向建立v->u ai-di表示少跑原创 2016-03-31 10:31:56 · 800 阅读 · 0 评论 -
方伯伯的商场之旅
http://www.lydsy.com/JudgeOnline/problem.php?id=3598能做的最后一道方伯伯~~看了一下,一开始以为是区间dp,后来才知道是数位dp.考虑这样一种做法,先枚举当前石子是全部搬到mid处最优,然后计算,这样貌似对于每一个数都需要枚举。那么假设我们处理搬到mid处最优的数有多少个,能计算出来,答案也就出来了。怎原创 2016-03-31 17:43:07 · 813 阅读 · 0 评论 -
scoi小凸玩矩阵 匈牙利+二分
http://www.lydsy.com/JudgeOnline/problem.php?id=4443参考leijp思想:每行只选一个,每一列只选一个,我们把每行当成左边,把每一列当成右边,每一行和一列只会有一条边。然后,把矩阵的值放在边上,比如(i,j)的值放在左边i行 到 右边j列上。这里要求第K大(没注意,以为是第K小。 然后K=n-K+1,求第K小)原创 2016-04-01 15:41:03 · 427 阅读 · 0 评论 -
scoi2015 bzoj4444 国旗计划
http://www.lydsy.com/JudgeOnline/problem.php?id=4444其实我并没想到正解~~首先把环拆成链,两倍链。然后要离散化f[i]表示左端点在i之前的最多能覆盖到哪个位置可以先处理f[i]在i的时候最多能覆盖到哪里,然后向前缀和一样搞一下。暴力计算出1-m的最小次数L,所有人的最小人数和这个数之差的绝对值不会超过1.原创 2016-04-01 15:57:46 · 769 阅读 · 0 评论 -
scoi2015小凸想跑步
http://www.lydsy.com/JudgeOnline/problem.php?id=4445这次是重做,但发现自己被读入优化坑了,不造为什么,反正改了就过了,坑爹~~~double坑爹scoi2015day1 攻克完成(虽然是看了题解的很水攻克~~)之前写过思路了,这里不再说了~~~转成不等关系跑半平面交(吐槽:还是推不等式ax+by+c#include#原创 2016-04-01 16:01:53 · 524 阅读 · 0 评论 -
scoiday1T3&&bzoj4445小凸想跑步
几何题啊,据说是裸的半平面交,but我还是WA了好几发。逆时针给定一些点,求多边形内到第一条边面积比到其它边小的点的概率(用范围/总面积)然后可以设该点为(x,y),到所有边的面积表示出来,然后建立不等关系,化简约分后我们可以得到一系列关于x,y的不等式,形如ax+by然而有两个bug我没考虑到,一个就是要保证(x,y)的点在凸多边形内部,怎么保证?先把所有的半原创 2016-03-22 08:34:28 · 1501 阅读 · 1 评论 -
bzoj2753滑雪与时间胶囊
http://www.lydsy.com/JudgeOnline/problem.php?id=2753因为景点数要尽可能多,所以一定要在景点数最大的情况下代价最小。景点数要尽可能大,就是从1能到的所有点都要被遍历。所以利用了一个dfs+vis数组。 遍历复杂度是O(n)的。然后代价尽可能小。考虑一些生成树的边,如果两条边的出边的点一样原创 2016-03-27 20:46:34 · 540 阅读 · 0 评论 -
poj1222高斯消元解XOR方程
http://poj.org/problem?id=1222题意:给定一个5×6的的矩阵,每次可以选择一个,使得它和四周的值翻转(开关变向),问怎样操作使得全为0.(PS:我交C++给我CE了,它不让我直接swap二维数组的第一维;G++给了我开了个优化)。利用高斯消元。我们可以得到30个方程。套用之前的思路,把f[][]看成是i,j是否相连,然后就会有一系列形原创 2016-03-27 21:22:22 · 518 阅读 · 0 评论 -
bzoj2326 矩阵乘法
http://www.lydsy.com/JudgeOnline/problem.php?id=2326递推:f[i]= f[i-1]*(10^log(i))+i mod M构造矩阵:{f[i-1] i-1 1} {10^log(i) 0 0 } { f[i] i 1} * {1原创 2016-03-28 10:19:58 · 704 阅读 · 0 评论 -
bzoj2820&&YY的GCD
马丹,又是一道权限题。问我怎么搞到题面:vjudge:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=37167HOMEPROBLEMSTATUSCONTESTAdd ContestStatisticLOGOUTnikelongUPDATE原创 2016-03-28 17:35:22 · 550 阅读 · 0 评论 -
bzoj1009[GT考试] dp+矩阵快速幂
http://www.lydsy.com/JudgeOnline/problem.php?id=1009题意:构造一个字符串(数字0-9)不含一个子串的个数我这么蒟蒻肿么可能想到是dp嘛~~~定义f[i][j]表示当前构造了i位,与模式串p匹配了前j位的方案数然后枚举下一位填什么,然后乘上当前构造出来的和模式串匹配到k的方案数。即是f[i+1][k]+=原创 2016-03-08 08:25:02 · 365 阅读 · 0 评论 -
bzoj1008[简单组合数学]
一看还以为很难的样纸~~~比较水了。还OI题- -要求任意两个相邻,貌似很难算,还要容斥什么的- -考虑设答案为集合A总共的状态m^n,为集合U,A关于U的补集为B.B就是任意两个不相邻。第一个数选有m种,剩下n-1个数每个数和之前那个不一样就好了,每一个有m-1种。B=m*(m-1)^(n-1)然后A=U-B=m^n-M*(m-1)^(n-1)原创 2016-03-07 15:02:27 · 427 阅读 · 0 评论 -
动态逆序对[CDQ]
CDQ二层试炼:bzoj3295http://www.lydsy.com/JudgeOnline/problem.php?id=3295题意大致是:给你一个序列(一个1~n的排列),每次删掉一个数,求删掉之前的逆序对。方案1:强行模拟,每次删掉一个一个数,在剩下的数里面用归并求逆序对,复杂度O(mnlogn)这个复杂度明显是不能接受的方案2:原创 2016-02-21 20:05:45 · 805 阅读 · 0 评论 -
斜率优化初涉
这是一个奇怪的东西- -http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=16331以toy为例浅谈斜率优化(可以略过前面看分割线以后,转移方程在前面)•直接来看这样一个问题:•BZOJ 1010 TOY•[HNOI2008]•P教授要去看奥运,但是他舍不下他的玩具,于是他原创 2016-02-01 11:03:10 · 393 阅读 · 0 评论 -
贪心系列-田忌赛马模型
心路历程是这样纸的:翻到一道bzoj的题,泡泡堂BNB,恩,题意很简单,就像田忌赛马那样dp一下就好了,可是dp是n^2的,这里的数据变成了10W,怎么办?瞬间懵逼~懵逼~~翻了一下田忌赛马那道题,考虑了一下dp,看能不能优化:这样dp的:现将两个人的马从大到小排序定义f[i][j]表示对于齐王的前i强的马,用了前j强的马和i-j弱的马获得的最大利益。f[i][原创 2016-03-03 10:17:20 · 1497 阅读 · 0 评论 -
SCOI2003【严格n元树】
Description如果一棵树的所有非叶节点都恰好有n个儿子,那么我们称它为严格n元树。如果该树中最底层的节点深度为d(根的深度为0),那么我们称它为一棵深度为d的严格n元树。例如,深度为2的严格2元树有三个,如下图:给出n, d,编程数出深度为d的n元树数目。Input仅包含两个整数n, d( 0 Output仅包含一个数,即深度为d的n元树原创 2016-03-03 11:58:59 · 439 阅读 · 0 评论 -
bzoj1005[明明的烦恼] purfer编码
之前提到过purfer编码了。一棵树唯一对应一个purfer编码,一个purfer编码唯一对应一棵树。1005: [HNOI2008]明明的烦恼Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 3664 Solved: 1459[Submit][Status][Discuss]Description自从明明学了树原创 2016-03-04 15:49:31 · 895 阅读 · 0 评论 -
bzoj1016【最小生成树计数】
1016: [JSOI2008]最小生成树计数Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 4194 Solved: 1689[Submit][Status][Discuss]Description现在给出了一个简单无向加权图。你不满足于求出这个图的最小生成树,而希望知道这个图中有多少个不同的最小生成树。(如果两颗最小生成树原创 2016-03-04 16:04:35 · 306 阅读 · 0 评论 -
三维偏序 CDQ
来看这样一道题()描述:给出 n 个点(x,y,z),请找出最长上升子序列,即对于选择序列中的 ixi输出最长上升子序列的长度和方案数。输入:第一行包含一个整数 n接下来 n 行,每行有 3 个整数 xi,yi,zi输出:输出长度和方案数(方案数对2^30取mod)输入输出样例:cdq.in cdq.out32 0 00 1 10 1原创 2016-02-21 10:52:34 · 6672 阅读 · 4 评论 -
bzoj3594&&方伯伯的玉米田
http://www.lydsy.com/JudgeOnline/problem.php?id=3594考虑dp[i][j]表示以i结尾,拔高了j次的lis.dp[i][j]=dp[k][l]+1枚举前一个最后以什么结尾,拔高了多少次。这里需要满足a[i]+j-l>=a[k]然后貌似就出来了:k但是这些值都不是定值(所以貌似CDQ不能做啊)然后就上二维树状数组。原创 2016-03-30 15:58:05 · 812 阅读 · 0 评论 -
方伯伯的oj bzoj3594
http://www.lydsy.com/JudgeOnline/problem.php?id=3594(貌似比维护数列更恶心QAQ,虽然我只是看了一眼不想写)这道题真够恶心,它坑了我一上午~~还是下午来的时候调出来的。原创 2016-03-30 16:58:59 · 496 阅读 · 0 评论 -
bzoj1211树的计数
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1211给定点的度数,判断能构成的树的个数。没什么特别的,知道了purfer编码之后,一如既往的做就是了。令sum=∑d[i]-1考虑n-2长度的purfer码,总共会组成C(sum,n-2)*sum!/π(d[i]-1)! 种方案,(n-2个里面选sum个组合,同时这s原创 2016-03-06 19:38:47 · 332 阅读 · 0 评论 -
bzoj1412[狼和羊的故事]最小割
http://www.lydsy.com/JudgeOnline/problem.php?id=1412很容易看出题目是要求把狼和羊分成两个独立的集合,并使代价最小。很明显是最小割嘛。把狼和羊分别与起点和终点相连。一开始我没考虑空地的情况,后来才知道空地之间要连一条边。然后巴拉巴拉上ISAP:原创 2016-03-06 20:05:29 · 452 阅读 · 0 评论 -
bzoj1443[game] 二分图
http://www.lydsy.com/JudgeOnline/problem.php?id=1443题意是求先放一个点,然后不论向那个方向移动(每个点不能经过2次),都考虑是否一定会赢看起来很像博弈,于是考虑记忆化搜索,如果当前层扩展的所有状态一定都是输,当前层决策才会赢!于是搞搞记忆化,但是找不到最候的状态,没办法计算什么时候该返回。然后考虑实际要求什么。枚举每个格子原创 2016-03-06 20:55:22 · 723 阅读 · 0 评论 -
bzoj4407于神之怒
看到好多大神留下的题解能看得懂,但是对于那个线性筛我表示我是蒟蒻我不会QAQ~于是我决定来水一发(顺便留下这道权限题,什么时候有权限了再去交一(交易)发)目前找了个过了的代码对拍发现并无错误&& 测试时间大致和那份程序差不多(应该能过吧~~)题意: n m求 ∑ ∑ gcd(i,j)^k mod 1e9+7原创 2016-03-29 09:20:07 · 655 阅读 · 1 评论