Description quailty和tangjz正在玩一个关于线段的游戏.在平面上有n条线段,编号依次为1到n.其中第i条线段的两端点坐 标分别为(0,i)和(1,p_i),其中p_1,p_2,...,p_n构成了1到n的一个排列.quailty先手,他可以选择一些互不相交 的线段,将它们拿走,当然他也可以一条线段也不选.然后tangjz必须拿走所有剩下的线段,若有两条线段相交, 那么他就输了,否则他就赢了.注意若quailty拿走了全部线段,那么tangjz也会胜利.quailty深深喜欢…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4881 1.当一块相互交织的线段中有3个或以上两两相交的那种线段时,无解. 这就是最长下降子序列!(不是某条线段的逆序对!)判断一下最长下降子序列长度是否>2. 正着 n-a[i]+1 (不是 n-i+1 !)或倒着 a[i] . 2.只要数有几个块,答案就是2^(块数). 数块方法:用set.一块只留下它最靠右的那条(用来和别人相交).新入一条线段要把它到最右边的线段们只留下最右边的. #…
[Lydsy1705月赛]排名的战争 Time Limit: 8 Sec  Memory Limit: 256 MBSubmit: 338  Solved: 69[Submit][Status][Discuss] Description 小Q是一名出色的质检员,他负责质检一批手机的质量.手机包含两个性能属性:电池寿命x_1与坚硬度x_2.小Q将 为它们评估综合质量分数,具体地说,他将选择两个非负实数w_1,w_2,且$_1,w_2不能同时为0,则一部手机的综 合分数s=w_1*x_1+w_2*x…
题面 题解 加入一条线段,可以把它转化为在[L,R]区间内加一条线 y=ax+b (如果原线段与y轴平行,就相当于在{x1}处加一条线 y=max(y1,y2)) 我们可以把它加到线段树上,线段树上每个点存一个区间内贯穿整个区间的一条对答案有贡献的线段(因为是贯穿整个区间,所以存一个 {a,b} 表示 y=ax+b 就行了). 一条线段是这么加上去的: 查询要遍历路径上的所有点: 接下来,最大的问题就是,它会产生冲突! 当我们加一条线段到线段树上,而原来节点上就已经有了一条线段怎么办? 首先,如…
相当于将线段划分成两个集合使集合内线段不相交,并且可以发现线段相交等价于逆序对.也即要将原序列划分成两个单增序列.由dilworth定理,如果存在长度>=3的单减子序列,无解,可以先判掉. 这个时候有两种显然的暴力. 将点集划分成两部分使内部无边显然就是二分图,于是第一种暴力是在逆序对之间连边,答案即为2连通块个数,因为每个连通块都可以交换黑白点.问题在于暴力连边是n2的,而显然实际有用的边其实只有O(n)条.考虑这样一种连边方式:每个点向后缀最小值.前缀第一个比他大的点连边.瞎归纳归纳就可以证…
[Usaco2009 Nov]硬币游戏 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 431  Solved: 240[Submit][Status][Discuss] Description 农夫约翰的奶牛喜欢玩硬币游戏,因此他发明了一种称为“Xoinc”的两人硬币游戏. 初始时,一个有N(5 <= N <= 2,000)枚硬币的堆栈放在地上,从堆顶数起的第I枚硬币的币值为C_i (1 <= C_i <= 100,000). 开始…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4883 把各行和各列看成n+m个点. 如果一下能防守行和列,就是最大匹配了.这是每两个左右部点需要一条边. 现在一行和一列都需要专门防守,其实可以看成每个点都需要一条边! 记录并查集内部已经有没有环,在连边的讨论一下即可. #include<iostream> #include<cstdio> #include<cstring> #include<algori…
Description 在一个n*m的棋盘上要放置若干个守卫.对于n行来说,每行必须恰好放置一个横向守卫:同理对于m列来说,每列 必须恰好放置一个纵向守卫.每个位置放置守卫的代价是不一样的,且每个位置最多只能放置一个守卫,一个守卫 不能同时兼顾行列的防御.请计算控制整个棋盘的最小代价. Input 第一行包含两个正整数n,m(2<=n,m<=100000,n*m<=100000),分别表示棋盘的行数与列数. 接下来n行,每行m个正整数 其中第i行第j列的数w[i][j](1<=w[…
Description http://www.lydsy.com/JudgeOnline/upload/201712/prob12.pdf Input Output 暑假集训的时候点分树做的比较少,所以做这道题比较吃力,然而现在看这道题就比较简单了. 考虑直接建立点分树,每一个节点只需维护点分子树中 $BFS$ 序. 这样的好处是子树中点的深度是连续的,所以每次能到达的点肯定是连续的区间. 那么,只需按照 $Dijkstra$ 的运行过程,将点加入到优先队列中,并扩展队首. 每次扩展只需边删掉…
4881: [Lydsy1705月赛]线段游戏 Time Limit: 3 Sec  Memory Limit: 256 MBSubmit: 359  Solved: 205[Submit][Status][Discuss] Description quailty和tangjz正在玩一个关于线段的游戏.在平面上有n条线段,编号依次为1到n.其中第i条线段的两端点坐 标分别为(0,i)和(1,p_i),其中p_1,p_2,...,p_n构成了1到n的一个排列.quailty先手,他可以选择一些互不…