自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 HDU 5754 Life Winner Bo(推导必胜-必败态)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=5754 题目就是就四种棋,然后走的时候从(1,1)走到(n,m),每次只能走右下方,问你谁能赢。 这题其实只要对每一种棋子分类讨论,推导每一种棋子的情况就可以了。 1——King: 因为只能走相邻的三格,那么我们从终点往前递推步数,很快可以看出来规律。就是n和m都是奇数的时候是G,其他情况为B 2

2016-07-31 19:44:17 437

原创 HDU 5727 Necklace(二分匹配)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=5727 题意:n个阳点和n个阴点,要拼成一个项链,而且阳和阴必须相邻,每个阳的两边都是阴, 每个阴的两边都是阳。然后给你m条边,每条边包括一个编号为a的阳点,和编号为b的阴点,表示这两个如果相邻的话,这个阳点就会变得忧郁。问你最少几个阳点会变忧郁。 思路:最少几个会变的忧郁,那么就是n-最大几个正常的阳

2016-07-22 15:13:17 364

原创 HDU 5723 Abandoned country (最小生成树+dfs)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=5723 题意:给你n个点和m条边,保证每条边权值不等,求最小生成树的权值。然后随机选两个点,求这两个点的距离的最小期望。 思路:第一问很容易,而且我们可以知道,因为权值都不等,所以最小生成树一定唯一。那么期望也就是:所有两个点的距离*选择两个点的概率。 概率就是1 / (n * (n - 1) / 2

2016-07-22 15:07:43 272

原创 HDU 5536 Chip Factory (字典树——序列中查找最大异或和)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=5536 题意:在一组序列中找到三个数,使两个数的和异或第三个数的值最大。 思路:我们可以知道,字典树有一个经典应用,就是在一组序列中找到一对异或和最大的两个数。只要枚举一个数,然后贪心的在字典树中找每一位不同的数字就可以了。所以我们可以建一棵字典树,先(n^2)把除了第一个数以外的两两数字的和,插入到字

2016-07-18 16:51:31 770 1

原创 HDU 5044 Tree (树链剖分+数组lazy-tag)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=5044 这题题意很容易,我瞬间就以为这题是个水题,只要码码码就能过了,然后写了个树剖+线段树的,超时了。感觉很不解,后来看了别人的题解,才发现,这题可以由更优越的解法。 主要是因为这题的最后是要输出每一个点的点权和每一条边的边权,而且只有增加操作,没有覆盖操作。所以就可以有一个思路,用数组来保存每次操作

2016-07-16 18:48:49 361

原创 FZU 2082 过路费 (树链剖分)

传送门:http://acm.fzu.edu.cn/problem.php?pid=2082 这题有个注意点,就是他更改的时候是更改第a条边,那我们怎么才能知道第a条边是更改线段树上的哪个点呢?因为我们在表示边的时候是用一个点表示他的父亲边,所以第a条边是用这条边上深度大的那个点来表示的,problem solved。 一次AC!#include <cstdio> #include <cstri

2016-07-16 14:34:12 391

原创 HDU 4807 Lunch Time(费用流)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=4807 题意:告诉你一些单向边,问你k个人最快能多久从0点到达n-1点。 思路:这题可以看出是费用流,但是费用流只能求出最大流和最小费用,而且是包括所有增广路的。但是实际上,每条路每秒钟都可以进入一批人,所以在一些情况下,可以考虑等待一段时间走短的路,而不是每条路都直接进入。所以我们在费用流中每次增广求

2016-07-16 11:33:53 379

原创 HDU 1107 武林(模拟)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1107 这题算是挺麻烦的一个模拟了。。wa了一次,发现有句话忘记写了,加上去就过了。纪念一下,写了差不多两个小时。#include <cstdio> #include <cstring> #include <algorithm> #include <cmath> #include <cstdlib> #i

2016-07-11 18:01:48 417

原创 Codeforces 225D Snake(状压BFS)

传送门:http://codeforces.com/problemset/problem/225/D 题意:有一条蛇,头是1,然后按照234……的顺序趴在一个图上,问你蛇最少几步能吃到@。 思路:这题还是挺简单的,因为只要想到如何去保存蛇的状态就能做了。因为这题其实就是一个BFS,但是在BFS的过程中,你要知道这个蛇的当前状态是怎么样的。如果直接从1开始BFS,不管其余部位的话,在走了几步之后,

2016-07-11 10:53:39 943 1

原创 POJ3463 Sightseeing(dijkstra求最短路+次短路)

传送门:http://poj.org/problem?id=3463 题意:给你n个点和m条单向边,和起点s,终点t。问你从s到t的最短路和比最短路大1的路一共有几条。 思路:改造一下dijkstra,一开始只记录了一个点是否访问过,但是wa了,因为一个点可以通过一个点的最短距离和次短距离访问过来,所以要记录每个点的最短路和次短路是否都访问过了,需要一个vis[maxn][2]。因此,朴素dij

2016-07-09 16:54:51 732

原创 HDU3016 Man Down(线段树)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=3016 题意:有n块板子,一个人从最高的板子开始往下跳,每次只能从一个板子的左或者右端点往下跳,同一个高度只会有一块板子。问你到最下面,能获得的最大分数是多少。如果中间分数<0了,游戏直接结束,输出-1。 思路:这题想到线段树好像就可以直接模拟了。因为跳下来只能从左或者右,所以一块板子的价值就是l和r处

2016-07-09 14:19:18 664

原创 HDU 4856 Tunnels(BFS+状压DP)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=4856 题意:先输入n,m,然后是一个n*n的图,然后输入m条隧道,每条隧道包括起点的x,y,终点的x,y。问你如何用最短的时间走遍所有隧道,每条隧道只能走一次,不能走遍则输出-1。 思路:最短时间走遍隧道,而且每个只能走一遍,这个很明显是一个状压dp,就像tsp那种。但是我们要处理出每条隧道之间的距离

2016-07-09 11:09:54 448 2

原创 HDU2586 How far away ?(tarjan+并查集离线求lca)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=2586 这题大概是个模板题,又学了一个新姿势。先dfs一遍,求出每个点到根节点的距离。然后将询问离线,开始求lca,在dfs的时候同时更新并查集,就能求出当前位置下的已访问过的两个点的lca,两个点#include <cstdio> #include <cstring> #include <algorit

2016-07-08 16:09:18 457

原创 HDU1054 Strategic Game(二分匹配)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1054 这题题意很裸,看到明显就是一个最小顶点覆盖,求一个二分匹配就好了。#include <cstdio> #include <cstring> #include <algorithm> #include <cmath> #include <cstdlib> #include <cctype> #inc

2016-07-08 16:04:40 265

原创 POJ2886 Who Gets the Most Candies?(反素数+线段树模拟约瑟夫环)

传送门:http://poj.org/problem?id=2886 这题真是太厉害了。。 我们要先知道反素数:对于任何正整数x,其约数的个数记做g(x).例如g(1)=1,g(6)=4.如果某个正整数x满足:对于任意i(0if(val[pos]>0){ k=(((k-1+val[pos]-1)%mod)+mod)%mod+1; //k-1表示去掉本身,val[pos]-1在后面

2016-07-04 11:22:28 262

原创 HDU4777 Rabbit Kingdom(树状数组)

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=4777 题意:n个数,m个询问,每个询问是一个[L,R]区间,问你这个区间内,有几个数字与其他的数字互质。 思路:想了很久还是不会做,看了一些别人的博客,算是有点明白了。先求出2-200000里每个数字的素数因子(包括本身),然后用一个数组标记素数因子的位置,从左到右扫一遍,从右到左扫一遍,求出L[]和

2016-07-01 17:17:41 388

空空如也

空空如也

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

TA关注的人

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