自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 POJ 3352 Road Construction 边-双连通分量

題意:n点m条边的无向图,若删掉一条边,联通分量数目增加,则该边为桥.n,m<=1000. 问最少添加多少条边,使得原图为一个双联通分量?(所有的边都是桥.)先边双联通缩点,缩点后每条边都为桥,原图变为一棵树,现在计算多少个度为1的点(leaf). 显然每两个度为1的点都要连接一条边,否则删除它上面一条边,连通分量数目增多.最少添加(n+1)/2条边.参考链接具体方法为,首先把两个最近公共祖...

2018-06-22 15:19:08 156

原创 CF Round 276D. Maximum Value 暴力,二分.

题意:长度为n的序列a, 问a[i]>=a[j]中. (a[i] mod a[j])的最大值为多少?n<=2e5, 1<=a[i]<=1e6.枚举a[j].此时答案为[0,a[j]-1)  那么把值按a[j]来分段  [a[j],...2a[j]-1],[2a[j]...3a[j]-1]为一段.现在要想知道每段的最大值. 预处理前缀和.若第k段最值为x,pre[x]是该段第...

2018-06-21 10:11:56 126

原创 CF Round 239D. Long Path 思维

题意:x轴上有[1,2,3...n]个点.初始在点1.若到达点i时的次数为奇数,则下一次走到p[i].否则走到i+1.n<=1e3. 1<=p[i]<=i. 问要经过多少次才能到达n+1.注意到 1<=p[i]<=i .若第一次到达点i,则说明此时i-1到达次数为偶数次.依次[1..i-2]也是偶数次.若i-2的到达次数不是偶数次 则无法到达i-1.设f[i]:i从到...

2018-06-20 11:09:22 137

原创 CF Round 488C. Two Squares 暴力,几何

题意:分别给出两个矩形的4个顶点,第一个矩形的边平行坐标轴,第二个矩形的边和坐标轴呈45度角.顶点都为整数,并且 -100<=x<=100. 问这两个矩形是否相交.若这两个矩形相交,因为肯定有一个矩形的某个边界落在另一个矩形内, 存在有一个交点为整数点.由于坐标的范围很小, 先求出第二个矩形的边界 在求出其所有的整数点标记即可.#include <bits/stdc++.h&gt...

2018-06-19 23:38:52 335

原创 CF Round 487D A Shade of Moonight 思维(相对运动)

题意:x轴上有n条长度为L的线段 第i条线段初始在[xi,xi+L].其初始速度为1或者-1.告诉你最大风速W.若风速为w,则线段速度为变为 v[i]+w.问在风速w不超过W的情况下(可以为负数和小数).有多少对线段(i,j)会在原点相遇?1<=n<=1e5, 1<=l,W<=1e8 . -1e8<=x[i]<=1e8. v[i]={-1,1}.若风速为w,根据...

2018-06-19 15:02:03 166

原创 HDU 5354 CDQ分治,并查集维护,奇圈

题意:n点m条边的无向图,对每个i[i=1..n],询问删除点i后,是否能变为二分图.1<=n,m<=1e5.一个图为二分图等价于这个图不包含奇圈.然后无法求出所有奇圈并做交集.cdq分治. 计算[l,r]的答案  如果[l,mid]的边已经包含奇圈 那么[mid+1,r]的答案显然为0.否则递归到右半区间. 用并查集来维护是否有奇圈,为了要撤销操作,用按秩合并代替路径压缩 并且用栈来...

2018-06-17 20:32:30 144

原创 BZOJ 3262 陌上花开 三维偏序,CDQ分治

題意:长度为n的三元组序列(a,b,c), 对每个i询问有多少个j满足 ai>=aj && bi>=bj && ci>=cj.n,a,b,c<=1e5.第一维排序,然后对序列分治.每次分治后对第二维进行归并,归并时考虑左区间对右区间的贡献,BIT维护第三维.O(n*logn*logn)#include <bits/stdc++.h&gt...

2018-06-16 11:46:40 203

原创 CF Round 230 C. Blocked Points 几何,思维

题意:有一个半径为r的圆.只考虑整数点.每个点都有4个反向可以移动.初始所有点都没被堵住. 不能移动到被堵住的点.R<=4e7, 问最少要堵住多少个点,使得圆内的点和圆外的点不联通.最好先自己画下图...考虑y=i这条直线. 这条直线上如果一个点都不堵 那么圆内中y=i的点肯定会跑到外面去.那么只要堵住:圆内中能一步走到圆外的点. 枚举y=i,维护递减的x即可.最后乘上4个象限并且加上4个坐...

2018-06-14 11:05:08 134

原创 BZOJ 1041 圆上的整点 数论

题意:给出R,问半径为R的圆上有多少个整数点? R<=2e9.x^2+y^2=r^2.  -> (r+x)(r-x)=y^2 . 令d=gcd(r+x,r-x).m=(r+x)/d,n=(r-x)/d.则y^2= d^2*m*n . 因为gcd(m,n)=1 所以m,n都为完全平方数.(m,n素因子分解后的幂都为偶数.)那么让m=u^2,n=v^2.  得:r+x=d*u^2,r-x=...

2018-06-12 19:55:28 772

原创 CF Round 232 C. On Number of Decompositions into Multipliers 素因子分解,组合数

题意:给出长度为n的序列a, 其中m=a[1]*a[2]..*a[n]. n<=1e5,a[i]<=1e9 问将m拆分成n个数的乘积的方案数?将每个a[i]素因子分解. 从而得到m的每个素因子幂.初始n个位置都是1. 第i个素因子幂为val,现在将第i个素因子放入n个位置中的方案为C(val+n-1,n-1).总方案累乘即可.#include <bits/stdc++.h>...

2018-06-10 14:03:12 118

原创 ARC 084D. 700 Small Multiple 同余,暴力

题意:定义f(x)为x的数位之和.例如f(427)=13.2<=k<=1e5. 给出k,问f(y)最小为多少,y为k的倍数?y为k的倍数,也就是y%k==0  余k为0肯定从某个余k为r的更新而来若x≡y(modk) 显然只要保留f(x),f(y)中f值较小的哪一个.从一位数开始bfs搜索,每次可以在该数后面*10+i.只有f(r)比原先优的才会被压入队列. 也就是Dijkstra求最...

2018-06-09 16:52:24 266

原创 ARC 083D. 500 Restoring Road Network 最短路

题意:n个点的无向图, 告诉你矩阵a[i][j]:i->j的最短路径长度.1<=n<=300,问矩阵a是否合法.若a合法输出最小的边集之和.若存在a[i][j]> a[i][k]+a[k][j] 则说明矛盾输出非法.a[i][j]如果存在一个中间点k 满足a[i][k]+a[k][j] = a[i][j] 那么(i,j)之间可以不用添加边.若不存在中间点k 为了使(i,j)...

2018-06-09 14:45:41 261

原创 Atcoder 600 11 组合数(恒等式)

题意:长度为n+1的序列a.其中[1..n]每个数都至少出现一次.1<=n<=1e5,对每个k=[1..n] 询问长度为k的不同的子序列有多少个?如果n个数都不同 那么长度为k的不同子序列个数为C(n,k).序列a:[1..n]其中一个数x出现2次.其余出现一次.[...x....x...] 两个x的位置分别为p1,p2.长度为k中有三种情况:不包含x,有两个x,有一个x. 前两个显然...

2018-06-08 11:16:23 346

原创 CF Round 117C. Optimal Sum 暴力(区间前k大和)+Set

题意:长度为n的序列a.定义一个区间的价值为:该区间所有的数相加后的绝对值.操作:改变一个数的正负号.1<=len<=n<=1e5.0<=k<=n,-1e9<=a[i]<=1e9. 问在操作不超过k次的情况下.长度为len区间的最大价值.长度为len的区间中,相同符号的显然要尽量多.所以改变的只有该区间前k大正数,或者前k小负数.如何求所有长度为len区间...

2018-06-07 21:31:32 823

原创 Round 78C. Help Victoria the Wise 暴力(旋转),BFS

题意:给出6种颜色(可以有相同颜色),问将一个正方体用这些颜色上色的方案数.两个方案相同,当其中一个方案可以通过旋转若干次得到另外一个方案.面个数,颜色个数=6. 旋转方案有3种.每种方案选择顺序不同 结果也不同.枚举每个面的颜色后,BFS暴力计算重复的即可. O(6!*3).#include <bits/stdc++.h> using namespace std; const int...

2018-06-06 10:01:06 252

原创 Atcoder 700 RGB Coloring 组合数

题意:n件物品,初始都为白色,现在将物品涂色,涂红色+A分,涂蓝色+B分,涂绿色加(A+B)分.1<=n,a,b<=3e5. 0<=k<=18e10.可以有物品不涂色,问n件物品的得分正好为K的方案数mod998244353?若a>b 则swap(a,b)一件物品的得分为0,a,b,a+b. 枚举物品得分至少为a的有x件,那么还要在选m=(K-A*x)/B 件物品得分...

2018-06-05 19:58:19 237

原创 CF Round 172C. Rectangle Puzzle 几何(旋转,极角排序)

题意:给出矩形的长和宽,该矩形中心点在(0,0).问将矩形逆时针旋转a度以后,和原先矩形的重叠面积?先求出旋转后的四个顶点.可以得到4条直线.求出这4条直线和原先矩形的交点.这些交点构成组成的凸多边形显然就是重叠的部分.将交点极角排序后,利用叉积求出面积可.注意斜率为0时特判一下.#include <bits/stdc++.h> using namespace std; typedef...

2018-06-02 16:52:55 311

原创 CF Round 245D.Working Out DP(不相交路径)

题意:n*m矩阵,(i,j)的价值为a[i][j],两个起点分别为(1,n),(n,1) 对应终点为(n,m).(1,m).第一个起点的人只能向下和右移动,第二个起点的人只能向上和右移动.1<=n,m<=1e3.问这两个人的路径正好只有一个交点时的最大价值?枚举交点(x,y) 那么(1,1),(n,1) 到(x,y)的路径不能相交并且价值要尽量大.设f[x][y]为(1,1)到(x,y...

2018-06-02 14:59:59 179

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除