自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

缺氧

2015/12/03 Go the extra mile.

  • 博客(42)
  • 资源 (4)
  • 收藏
  • 关注

原创 hdu-4415-贪心

这个贪心有点炸。。首先能发现,只要能杀一个Bi非零的,则可以根据红利至少杀死所有的Bi非零的如果不能杀死bi非零的,那么就按ai排序从小到大杀。如果能杀一个bi的话, 设红利总共sum,如果已经能把所有人杀完,则直接 ans1=n,ans2=0,否则,把其余人按ai排序贪心。为什么呢?如果能杀一个Bi非零的,必然是,杀死所有Bi,并获得红利,才是优的,因

2016-07-30 23:11:31 596

原创 HDU 4417-树状数组求区间rank查询/主席树区间rank查询

主席树做法:离散化下标,直接求累计区间里小于等于query_k的个数  ,这题似乎跑得时间都差不多。#include #include #include #include #include #include #include #include #include #include using namespace std;const int MAXNN=100005;

2016-07-30 02:20:03 334

原创 HDU 4419-矩形面积并+容斥原理

http://acm.hdu.edu.cn/showproblem.php?pid=4419一直想怎么直接处理多个颜色信息,sb了,直接暴力算每种颜色的面积并,再通过容斥原理乱搞计算得到每块的面积即可。直接开7个大小为N的线段树维护每个颜色会超时,要按每种颜色数量开一个,刚好400ms#include #include #include #include

2016-07-30 01:00:33 657

原创 HDU 4407-容斥原理+暴力+欧拉函数

题意: 有一个元素为 1~n (n1、求某段区间 [a,b] 中与 p 互质的数的和。 2、将数列中某个位置元素的值改变。这题因为m很小,所以可以暴力处理m,那么我们先考虑元数组为1-n,问题就简单多了先求出【1,x】内 与p互质的数有多少个,根据欧拉定理就可以求啦,也就是求出p的质数,然后容斥一下得到与p互质的数的个数。num1=get(1,x-1),

2016-07-27 23:04:34 288

原创 HDU 4400-Mines-KDtree

题意就是给n个炸弹, 选择m个去引爆,每个炸弹的影响范围是D,这里的距离是曼哈顿距离,炸弹之间会相互引爆问每次选择的一个炸弹后,最后引爆的炸弹个数构建kdtree,然后每次搜最近点,加到队列bfs炸开,复杂度 构建logn*logn,查询n*logn#include #include #include #include #include #includ

2016-07-27 22:58:24 537

原创 hdu-4387-博弈论

http://acm.hdu.edu.cn/showproblem.php?pid=4387k=1,n奇先手输若n==2k+1,先手需先占据最中间的位置则赢,即 先手赢,第一选k其余情况即n>2k+1,先手也要尽量占据中间位置,那么一开始就从1开始出发,尽量整体前挪,把状态转移到n=2k+1的情况。。即第一选1#include #include #inclu

2016-07-27 10:33:58 413

原创 HDU 4283-区间DP

http://acm.hdu.edu.cn/showproblem.php?pid=4283题意给一列人,n个,依次上舞台,每个人有个Di值,每个人的unhappy值就是其Di乘上前面的人的个数,但是导演要通过一个堆栈调整顺序,使得sum_ of unhappy值最小。区间dp : dp[i][j]表示从i到j这段区间内的sum of unhappy 值最小的方案值

2016-07-27 09:36:56 245

原创 hdu4279-欧拉函数+约数个数+打表+sqrt()精度问题

http://acm.hust.edu.cn/vjudge/problem/31861/origin题目要求 对一个数n, 从【1,n】里去掉其约数,并去掉所有与其互质的数,求剩余数的个数,如果个数为奇数,则 是一个real number求区间【X,Y】之间的real number数先是打表发现规律,其实也蛮好证明:首先 对一个数,与其互质的数肯定是偶数个的(根据欧拉公式可得),其

2016-07-26 22:01:34 443

原创 HDU 4284-状压DP+最短路

http://acm.hdu.edu.cn/showproblem.php?pid=4284给n个点(100),m条带权无向边,要求必须经过h个点,初始有money块钱,问能否把所有h个点都访问,并最后回到1.访问这h个点有个前提条件,就是到该点时,钱要大于d[i],则访问后会扣点d【i】块,但是会返回c[i]块,当然 走边权也要花钱。flody 预处理出最短路把h个状

2016-07-26 21:41:41 400

原创 HDU 5738-计算几何-统计共线的子集个数

http://acm.hdu.edu.cn/showproblem.php?pid=5738n=1000给n个点,求每一条线上的子集个数,如果不考虑重点,直接暴力枚举出所有的线,C(point_num,2)就是该线的答案。但是这题有重点,所以要把重点的缩起来,要保证重点里的子集只被计算一次。那么对于普遍情况就是,给一条线,我们这条线的附着点是X,则X有可能是重点,设数量

2016-07-26 17:58:32 467

原创 HDU 5726-D-GCD- RMQ+二分

http://acm.hdu.edu.cn/showproblem.php?pid=5726给n个数,m次询问,每个询问【l,r】求【l,r】之间的gcd是多少,并求出整个数组中有多少段的gcd等于该【l,r】的gcd首先用st表预处理RMQ的gcd,然后枚举起点【1-n】i由于gcd一段固定以后具有单调性的对于每个起点,枚举右端点pos,记下i到pos的gcd

2016-07-24 12:18:17 387

原创 HDU 5723-A - Abandoned country-最小生成树+树dp

按题意求一个最小生成树,然后走一遍dfs记录每个点为根的子树大小,那么走过 某条边的点对就是 num[x]*(n-num[x]),累加一下除边就好#include #include #include #include #include #include #include #include #include #include using namespace std;

2016-07-24 11:23:06 322

原创 HDU 5724-Chess-博弈论-sg函数

对于每一个状态,暴力求出所有后继状态,通过SG函数求到该状态的SG值。。这题用dfs+记忆化暴力写就好了当时直接枚举了所有情况打表。。。存了所有后继,差点爆内存,改成short才过#include #include #include #include #include #include #include #include #include #inclu

2016-07-24 11:21:08 268

原创 cf#361-C - Mike and Chocolate Thieves-二分

有4个贼,他们共用一个容量为n的背包,他们偷的东西量为等比数列,即a,aq,aq2,aq3,要求aq^3给出 a与q的组合方案恰为m,求出最大的N解法:二分N,对每个N的判断如下:  枚举q,while(q*q*q即当 二分得到的N的方案数==m,则可行,否则说明该方案不存在#include #include #inclu

2016-07-24 00:44:30 343

原创 HDU 4664 Triangulation-SG函数

http://acm.hdu.edu.cn/showproblem.php?pid=4664一个平面上有n个点(一个凸多边形的顶点),每次可以连接一个平面上的两个点,不能和之前的边相交,如果平面上已经出现了一个三角形,则不能在这个平面上继续连接边了。可以看出这个是公平游戏,可用sg函数计算,而n个游戏的话,每个游戏的nim和便是他们的最终结果。那么对于当前局面SG(x),它

2016-07-22 17:04:03 385

原创 HDU 4274-Spy's Work-树dp

。。。http://acm.hdu.edu.cn/showproblem.php?pid=4274题意:一个结构像一棵树一样的公司。一个间谍去打探,然后发回来一些消息,让我们判断真假。消息里有一条不对,我们就认为间谍撒谎。否则正确。这里的消息就是 X Y 表示X这个子节点和其所有子孙的和与Y的关系 当时还想把X按dfs序拆成一个区间维护。。。其实只需要维护每一个点的上下界

2016-07-21 23:34:30 262

原创 HDU 4273-G - Rescue-三维凸包求重心

...求个凸包重,然后求重心到各个面的最短距离// LA4589 Asteroids// Rujia Liu#include#includeusing namespace std;const double eps = 1e-8;int dcmp(double x) { if(fabs(x) < eps) return 0; else return x < 0 ? -1 : 1;

2016-07-21 20:23:19 306

原创 HDU 4268-Alice and Bob-贪心

典型的双关键字排序咯。。A,B分别排好序从大到小遍历B,每次遍历到Bi时,确保 所有第一关键字大于Bi的 Aj都要在一个set里候选,即可保证贪心正确#include #include #include #include #include #include #include #include #include #include using nam

2016-07-21 20:21:26 274

原创 HDU 4267-Phage War-线段树

http://acm.hust.edu.cn/vjudge/problem/31829/origin题意:n个数q次操作每次操作 1: 区间更新【a,b,k,c】  对区间【a,b】从a开始每k个加c2:单点查询【x】 查询x的值如果用树状数组,直接暴力 每个k,以及对应的x%k 的余数 也是【0到k-1】开一个树状数组,也就是开【k】【k】个数组,

2016-07-21 20:18:20 297

原创 hdu-4764-博弈论

http://acm.hdu.edu.cn/showproblem.php?pid=4764可选范围是【1到n-1】可以看出 先选n-1必胜,因为下一个人必选大于等于n的数,则选到【n-k-1到n-2】为必败态,因为下一个人就选到了n-1。同理n-k-2也是必胜态,因为下一个人必会落入【n-k-1到n-2】这个必败态,因此n-1、 n-1-(k+1)等 循环节为k+1的一些数构

2016-07-21 10:09:11 344

原创 hdu-1811-Rank of Tetris-并查集缩点+拓扑

http://acm.hdu.edu.cn/showproblem.php?pid=1811题意:自从Lele开发了Rating系统,他的Tetris事业更是如虎添翼,不久他遍把这个游戏推向了全球。为了更好的符合那些爱好者的喜好,Lele又想了一个新点子:他将制作一个全球Tetris高手排行榜,定时更新,名堂要比福布斯富豪榜还响。关于如何排名,这个不用说都知道是根据Rating

2016-07-20 23:43:59 308

原创 hdu-4045-Machine scheduling-组合数学(插板+第二类Stirling数)

http://acm.hdu.edu.cn/showproblem.php?pid=4045题意: n个机器,每天选择r个机器,这任意r个机器编号差>=k,并且将它们分成不到m个相同的组,一共多少方案?一是 把n机器每天选r个 编号差》k的方案二是把r个机器分成小于等于m个组的方案二者乘积就是答案对于1: 既然要编号差大于等于k,先令每个机器

2016-07-20 22:55:21 616

原创 HDU 5011-game -nim游戏变种

http://acm.hdu.edu.cn/showproblem.php?pid=5011和的异或为零则先手败,否则胜利#include#include#include#include#include#includeusing namespace std;int main(){ int n; while(scanf("%d",&n)!=EOF)

2016-07-20 09:00:58 306

原创 HDU 5015-233 Matrix-矩阵快速幂

http://acm.hdu.edu.cn/showproblem.php?pid=5015根据题意 构造一个 (n+2)*1的原矩阵   【a1 a2 a3.....233  3】和一个 n+2  * n+2 的系数矩阵【1 1 1 1 0   0】【0 1 1 1 0   0】【0 0 1 1 0   0】【1 1 1 1 10 0】【0 0 0 0 1  

2016-07-20 08:59:25 321

原创 hdu-2385-Stock-贪心

http://acm.hdu.edu.cn/showproblem.php?pid=2385n个股票流水,每天给你 x 份股票,每份可以在当天卖出y元,当天最多能卖z份股票可以当天不卖留着后面卖,求最大的利润:贪心  由于第1支股票可以在 1..n天卖,  第二支可在 2---n天卖,最后一支只能在第n天卖所以倒着卖,先卖最后一支,如果卖完还有剩余的份额,丢

2016-07-19 10:00:42 429

原创 gym100818F-F - Irrational Roots

给n次多项式的n个系数求无理数根数最高次为1根据整系数方程有理根存在定理,如果方程f(x)=0的系数都是整数,那么方程有理根仅能是这样的分数p/q,其分子p是方程常数项的约数,分母q是方程最高次项的约数。这题最高次系数为1,那么有理根就一定为整数。所以直接枚举所以答案就是n-有理根数有理根要判重根#include #include #in

2016-07-18 18:13:19 344

原创 gym100818I - Olympic Parade

* Problem: Gym 100818F Problem F Irrational Rootshttp://codeforces.com/gym/100818/attachments给n个数,都是id,其中有一个id的出现次数无法被k整除卡时间和内存当时是hash过的后来问了下直接sort也能过,还有一种是位运算统计has

2016-07-18 17:39:06 513

原创 hdu-2480-Steal the Treasure-贪心+缩点

http://acm.hdu.edu.cn/showproblem.php?pid=2480边排序,贪心选择大的,遇到单向边直接选并标记起点x,遇到双向边,且起点可以任选,则缩点,若起点唯一,则按照单向边处理,标记起点#include #include #include #include #include #include #include #includ

2016-07-18 10:40:41 457

原创 hdu-2818-Building Block-带权并查集

http://acm.hdu.edu.cn/showproblem.php?pid=2818有n条管pipe,能把砖块串起来,初始每条管穿了一个砖题意: 有2种操作:  M x y把x的管放在y管的上面 C x求x的下面有多少个砖块带权并查集,维护一个num[i]表示i到根节点之间有多少块砖,再维护一个tol[x]数组,表示管x上一共串有多少个砖块合并就

2016-07-17 21:44:04 415

原创 hdu-3038-How Many Answers Are Wrong-带权并查集

http://acm.hdu.edu.cn/showproblem.php?pid=3038题目大意:有n次询问,给出a到b区间的总和,问这n次给出的总和中有几次是和前面已经给出的数据中是矛盾的?操作:  x y z 表示【x,y】的和为z把区间【x,y】的和为z ,转化为 【1,x-1】,【1,y】的差为z,这样我们就可以用并查集方便地处理

2016-07-17 15:53:02 224

原创 cf#362-C. Lorenzo Von Matterhorn

http://codeforces.com/contest/697/problem/C给你一个完全二叉树两个操作1: u,v,w 把u到v上的路都加w权值2:u,v  查询u到v的权值和uv最多1e18,log一下也就是60层左右那么直接用map模拟即可mp[i]表示的是 i到其父亲的这条路的权值类似倍增算法模拟一下即可#include

2016-07-17 12:50:49 417

原创 cf#362-D - Puzzles-树DP /概率

http://codeforces.com/contest/697/problem/D给你一个n-1条边的联通图从1开始 随机的dfs,问 访问到每个节点时,经过的节点数 的期望很显然是个树dp,我们可以从ans[fa]推得ans[son]对一个节点u, 影响其期望值的节点有三种,1是其祖先节点,这些节点必然会在访问u之前被访问,对期望贡献为 1

2016-07-17 11:55:27 384

原创 hdu-3314-并查集

http://acm.hdu.edu.cn/showproblem.php?pid=3314如果形成环,则标记一下,最后统计一遍每个人得多少票,看是否唯一即可#include #include #include #include #include #include #include #include #include #include using

2016-07-12 17:17:51 352

原创 hdu-3367-Pseudoforest-并查集

http://acm.hdu.edu.cn/showproblem.php?pid=3367题意:给你一个图,让你找出一个Pseudoforest子图,Pseudoforest指图里的每个连通分支里的环的数量都不超过1。每个子图的value就是所有边的和,求一个最大的 符合条件的Pseudoforest子图大致就是对每个连通分支,进行删边,尽量删权值小的边,

2016-07-12 16:45:30 301

原创 hdu -3926-简单判同构并查集

http://acm.hdu.edu.cn/showproblem.php?pid=3926简要判断图的同构,由于点度数不超过2只可能形成环、链、点,因此用并查集合并与记录判断 是否为环,就看加入的边,时候之前已经联通,如果是,则说明存在环最后判断同构的时候,只需要取每个联通分量的 根节点信息比较【节点数,环还是链...】 似乎后台没这组数据18 7

2016-07-12 14:08:11 329

原创 hdu-3938-Portal-并查集

http://acm.hdu.edu.cn/showproblem.php?pid=3938简单的讲就是,给你一张无向图,求有多少对点之间的路径花费小于L这里路径花费:u-v 两点之间的多条路径中的最长的边最小值,一条路径中最长的边为其花费,若有多条取最长边最短的一条边。数据规模:There are multiple test cases. The first

2016-07-11 15:45:55 606

原创 hdu 4056 Draw a Mess -并查集+滑动法

http://acm.hdu.edu.cn/showproblem.php?pid=4056题意:给n*m的格点 (n=200,m=5e5)q次操作,每次按 四个几何图形 的面积去覆盖格点 ,每个图形带有一个颜色C (q=5e5,C=[1-9])问最后q次操作完成后,每种颜色的格子有多少个,输出9个数可以知道,颜色会覆盖,因此,从最后面开始处理,如果当前要涂色的格子

2016-07-11 11:29:08 364

原创 hdu-4263-最小生成树

http://acm.hdu.edu.cn/showproblem.php?pid=4263给出n个点m个边边的颜色有红和蓝求是否存在恰好有k条蓝边的生成树求一遍含蓝边最多的最小生成树再求一次含蓝边最少的生成树(即红边最多)若k在两者之间,则存在,否则不存在 构造的过程就是从 最少蓝边的图开始,加入一条蓝边,形成环,然后去掉一条红边,以此类推。。

2016-07-10 23:42:15 386

原创 hdu-4313-并查集

http://acm.hdu.edu.cn/showproblem.php?pid=4313题意,给你一个n点,n-1条边的图给你k个点,要求删除一些边使得k个点完全不连通求删除边集的最小价值又是这种删边的问题,可以逆向地用并查集处理正向地一条条删边是很麻烦的,如果我们逆过来,从头构图,把边按权值由大到小排序,每次选一条边,看加入 其后【是否导致 K

2016-07-10 17:56:45 273

原创 hdu-4496-并查集

http://acm.hdu.edu.cn/showproblem.php?pid=4496给n个点m条路要你一个个拆掉路,拆掉路i时,输出当前联通块逆向模拟即可,从最后一条开始添加,并查集维护#include #include #include #include #include #include #include #include #include

2016-07-10 17:02:56 270

java/swing编写的第一个扫雷程序.jar

个人感觉界面做得还不错的 实现功能点: 主题皮肤更换, OK 三种游戏模式, OK 计时, OK 扫雷英雄榜, OK 保存游戏进度 , OK 载入游戏进度, OK 标记雷区功能, OK 求救(help,提示雷的位置), OK 左右键同时按下九宫格提示/除雷功能, OK 联机对战 ,OK 分辨率自适应,OK

2015-12-24

java/swing编写的第一个扫雷程序

个人感觉界面做得还不错的 实现功能点: 主题皮肤更换, OK 三种游戏模式, OK 计时, OK 扫雷英雄榜, OK 保存游戏进度 , OK 载入游戏进度, OK 标记雷区功能, OK 求救(help,提示雷的位置), OK 左右键同时按下九宫格提示/除雷功能, OK 联机对战 ,OK 分辨率自适应,OK

2015-12-24

AC自动机模板

AC自动机模板,直接套,有注释N的范围,适合初学者学习

2015-12-08

空空如也

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

TA关注的人

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