
hdu
文章平均质量分 73
jerans
这个作者很懒,什么都没留下…
展开
-
HDU - 6031 Innumerable Ancestors
题意:给一棵树,m次查询, 每次查询给两个集合, 从这两个集合里分别选一个结点,使得这两个节点的lca的深度最大。考虑dfs序为5,6,7的三个节点,5,6的lca深度一定大于等于5,7的lca深度所以可以讲查询集合按dfs序排序,然后类似尺取的操作,使得每一对dfs序接近的节点都做一次lca,选一个最深的就可以了#include<bits/stdc++.h>using namesp...原创 2018-04-09 10:47:01 · 210 阅读 · 0 评论 -
HDU - 5881 Tea 思维
题意是倒茶,你只知道茶壶里水是L,R,可以壶里留1体积,往两个杯子里倒,最后两个杯子里面茶的体积差不能大于1首先会想到肯定要向第一个杯子里倒(l+1)/2 体积的茶,这样下一步就可以往另一个杯子里到(l+1)/2 +1体积,这样两次倒掉的总体积是L+2,如果R-1大于L+2的话就需要继续倒,每次最多往一个杯子里倒两体积,倒多的话可能壶里没水,违反规则,这样在特判先R#include原创 2017-09-17 00:33:56 · 430 阅读 · 0 评论 -
hdu 5795A Simple Nim sg打表
http://acm.hdu.edu.cn/showproblem.php?pid=5795操作是可以拿走一堆里的任意几个,可以把一堆分成三堆神他妈打sg表找规律,1e9范围当时看了根本没敢写sg函数啊。。。。。没接触过QAQ5555~sg【i】=i(i!=8*k &&i!=8*k-1)sg【8*k】=8*k-1sg【8*k-1】=8*k强推规律不如先暴一发#inclu原创 2017-09-08 02:36:49 · 241 阅读 · 0 评论 -
hdu5791Two dp hdu5781ATM Mechine 概率dp hdu5787 K-wolf Number 数位dp
http://acm.hdu.edu.cn/showproblem.php?pid=5791很水的dp,是考虑复杂了考虑重复的转移方程dp【i】【j】= dp【i-1】【j】+ dp【i】【j】- dp【i-1】【j-1】#includeusing namespace std;const int mo=1e9+7;const int maxn=1005;long long原创 2017-09-08 02:21:53 · 371 阅读 · 0 评论 -
hdu 5761 How Many Triangles 极角排序
http://acm.hdu.edu.cn/showproblem.php?pid=5784暴力每一个点,然后以这个点为原点做一个极角排序,尺取法求有多少个钝角,平角等等,为了不重复枚举,可以对每个点都只算向左180度以内的(利用叉乘正负判断)#includeusing namespace std;typedef long long ll;struct point{原创 2017-09-08 02:08:00 · 252 阅读 · 0 评论 -
hdu 5900 区间dp
http://acm.hdu.edu.cn/showproblem.php?pid=5900傻逼区间dp,一直wa,开了两个二维数组,一个记录i到j区间内是否可全部拿掉,一个标记i到j区间内拿掉可获得的最大价值#includeusing namespace std;int dp[306][306];long long v[306],k[306];long long sum[306]原创 2017-09-08 02:01:22 · 204 阅读 · 0 评论 -
hdu-5726 GCD 思维||二分
http://acm.hdu.edu.cn/showproblem.php?pid=5726两种做法,一个是仿照hdu5869 的那种做法,好写很多,复杂度也较优,不得不说那个思维很强hdu-5869:1575ms#includeusing namespace std;const int maxn=1e5+10;vector >w[maxn];int a[maxn];ma原创 2017-09-23 01:24:01 · 282 阅读 · 0 评论 -
hdu-Sort 二分
http://acm.hdu.edu.cn/showproblem.php?pid=5884二分加多叉哈夫曼树优雅的优先队列可以卡过,但必定不会有双队列O(n)写更优雅,学到了需要注意的坑点是,k叉哈夫曼树,每次减少k-1个元素,当(n-1)%k!=0时,也就是每次减掉k-1个,最后剩的数多于一个时如果最后在拿掉这些并不是最优的,最后必然剩很多大数,更优的策略应该是先拿掉这些多余的原创 2017-09-23 01:16:59 · 216 阅读 · 0 评论 -
HDU - 5860 Death Sequence 递推
每k个删掉一个,删掉之后对新序列继续这样的操作多次查询,求第m次是删掉了哪个位置的元素对于每个元素的下标是0~n-1(方便计算,1~n也可以),如果某个元素坐标 i 模 k 等于0则是现在要删掉的,否则会保留到下一轮,而到下一轮,新的位置是i-i/k-1而其实对于每一轮删的操作都是一样的,是不是也可以转化为,当前轮为i-i/k-1位置的元素删掉的轮次加一利用这个性质,就可以很好的O原创 2017-09-14 00:45:14 · 284 阅读 · 0 评论 -
HDU - 5894 hannnnah_j’s Biological Test 组合数(插板法)
题意是从n个不同的环形排列的座位里选出m个,并且每个之间必须相隔k个先保证相隔k个,拿出k*(n+1)个,对剩下的插板法来分n个座位是不同的,所以要枚举每一个做开头,但m个人是不同的,就会出现类似 选了1 3 8 3 8 1 8 3 1 这种重复情况,所以还要除mn*C(n-1-k*m,m-1)/m#includeusing namespace std;原创 2017-09-14 00:36:57 · 292 阅读 · 0 评论 -
HDU - 5821 Ball 思维
题意是给两段序列,多次操作,每次可以选一段区间,你可以任意调换第一段序列在这段区间里的数的位置,目的是把第一段调换成第二段区间看了题解才会系列,记录第一段序列每个数在第二段区间的对应位置(相同的数必然就是按顺序),每次给定的操作,就直接在给的区间内按记录的那个对应位置排序,最后扫一一遍比较一下,仔细想下这种贪心策略的确是可行的,脑洞不够大QAQ#includeusing name原创 2017-09-13 23:51:26 · 194 阅读 · 0 评论 -
hdu-5768 Lucky7 容斥
http://acm.hdu.edu.cn/showproblem.php?pid=5768题意是要求给定范围内,满足模7为零,模pi不为ai的数的个数(pi,ai已知条件)可以先求出范围内所有模7为零的元素,在求出所有模7为0并且模pi为ai的数的个数,最后减一下题目相当于转化为解多个同余方程组加容斥的问题数的个数比较少,可以直接dfs暴力容斥#includeusing n原创 2017-09-04 14:02:51 · 221 阅读 · 0 评论 -
hdu-5773 The All-purpose Zero 思维
http://acm.hdu.edu.cn/showproblem.php?pid=5773题意是:给一段序列,0可以替换成任意元素,求最长上升子序列难点就在0的处理,最初想法是正常求最长上升子序列,贪心的处理0,会发现有很多考虑不到的地方看了题解发现好巧妙。。首先,因为0可以做任意元素,所以使用0肯定是优于或同等于使用其他元素,所以应当使用全部的0,这样就考虑除0外,其他元素多还原创 2017-09-04 13:57:01 · 243 阅读 · 0 评论 -
To My Girlfriend HDU - 5800 dp
那个式子可以想成有两个物品必拿,有两个物品必不拿,最后体积小于等于m的方案数也是同样想到了n^3的dp,必然会T,走进死沟,看了题解,才想到...不要考虑太多,对每个物品,有四种拿的状态,拿,必定拿,不拿,必定不拿这样就裸的转移就可以了#includeusing namespace std;int a[1005];long long dp[2][1005]原创 2017-09-17 00:40:52 · 238 阅读 · 0 评论 -
HDU - 5794 A Simple Chess lucas+容斥
有些点不能走,从1,1走到n,m,每次只能走日字(象棋马),问有多少种走法,从一个点到指定点的走法可以组合数求解关于组合数,这篇博客的图很形象http://www.cnblogs.com/hchlqlz-oj-mrj/p/5740838.html然后排个序容斥掉不能走的点就可以了#include#define eps 1e-9#define PI 3.1415926535897原创 2017-09-17 00:45:54 · 247 阅读 · 0 评论 -
hdu 5963 博弈
http://acm.split.hdu.edu.cn/showproblem.php?pid=5963题意:中文题博弈,找了下规律,瞎几把写了个N*M的dfs,T了,没想到能过小数据。。。。看了下题解,大多是找规律,其实仔细想想,好像很对修改暴力修改就好了查询:对每个查询只看这个点直接相连的边里有几个为1的,奇数个则Girl Win ,偶数个Boy Win仔细分析一下,单原创 2017-10-17 12:29:53 · 241 阅读 · 0 评论 -
hdu 5175 思维
http://acm.hdu.edu.cn/showproblem.php?pid=5175给一个大数n,1e10的范围求1~n里有多少个数m满足gcd(m,n)==m^n(异或)好思路。。看的题解。。设m=n^x原式子变为gcd(n^x,n)==x那么x一定是n的因子,所以直接根n枚举n的因子即可#includeusing namespace std原创 2017-11-09 21:29:49 · 259 阅读 · 0 评论 -
hdu5033Building 单调栈
http://acm.split.hdu.edu.cn/showproblem.php?pid=5033好题啊,不得不说是好题,尤其是听cys讲过后,简直茅塞顿开题意:坐标轴上n个点上有高h的线段,q次查询,每次查询给一个坐标x,问在(x,0)点上看不到线段的视角范围是多少离线求,讲查询点和线段点整合在一起排个序,求左边看不到线段的角,也就是和左边线段上端点的最大夹角,同方法求原创 2017-10-14 20:06:31 · 280 阅读 · 0 评论 -
hdu5492Find a path dp
http://acm.split.hdu.edu.cn/showproblem.php?pid=5492题意:一个n*m方格,每个格子上有自己的权值,从1,1出发每次只能 从(x, y) 走向(x + 1, y) 或 (x, y +1),终点n,m,路径长度必然就是n+m-1,求(N+M−1)∑N+M−1i=1(Ai−Aavg)2的的的的最小值,其中Ai是路径上的第i个权值,Aavg是原创 2017-10-14 19:33:28 · 262 阅读 · 0 评论 -
hdu5573Binary Tree 思维构造
http://acm.split.hdu.edu.cn/showproblem.php?pid=5573题意:满二叉树,节点x左儿子标号是2*x,右儿子标号是2*x+1,每个节点权值即标号,从1号节点开始,走一段长度为k的路径,自己选择每个节权值加或减,问最后能不能凑成n想了很久都没思路,甚至还想到了打表找规律,徒劳。。。。。。看了题解,发现。。。。。。。。。。。稍微拐个歪就能想到原创 2017-10-14 19:10:02 · 248 阅读 · 0 评论 -
hdu 5035 Delivery 概率
http://acm.split.hdu.edu.cn/showproblem.php?pid=5035题意:有个人A去银行办理业务,有n个窗口,已知每个窗口关于时间的办好业务的概率密度函数是 p(ti = t) = kie^(-kit) ,还有每个窗口已经有人正在办理业务,并且已知每个窗口正在办理业务的人已经办理的时间,现在让你求A办好业务所需要的时间期望要注意这个时间期望有两部分,原创 2017-10-14 11:35:35 · 236 阅读 · 0 评论 -
hdu 5414 CRB and String||QDUOJ GZS and String
https://www.qduoj.com/problem/6/题意是给两个字符串s,t,每次操作是在s的某个字符c后面添加一个字符d,但要求d!=c,问能不能经过某些操作后使构造出t串贪心几个感觉比较好的样例aaabaaaaabaNoaaabaaaabbbaYesbaabaaYesabbabbYescatca原创 2017-11-08 21:46:32 · 239 阅读 · 0 评论 -
hdu-4777Rabbit Kingdom 树状数组
http://acm.split.hdu.edu.cn/showproblem.php?pid=4777题意:给一段序列,多个查询,查询某段区间内和其他数都互质的数的个数接触过类似的题目,但训练时竟没有想到树状数组,搜了发题解,看到树状数组四个字,立马就把题解关掉了,想了想,好像不难做必然是离线处理,套路类似spoj D-query需要修改的地方就是,以因子为索引寻找前驱,w原创 2017-10-05 17:39:48 · 311 阅读 · 0 评论 -
hdu 4803 贪心
http://acm.split.hdu.edu.cn/showproblem.php?pid=4803题意是两个数,x,y,x指个数,y指价值总和,两种操作,操作1:x+1(个数加一,总和在加一个单价,也就是y+=y/x),操作2:y+1(总和加一,个数不变,其实也相当于单价变高),问你从x=1,y=1开始,到达给的某个x1,y1,最少需要几步操作可以去向单价方面考虑,既然要到达x1原创 2017-09-30 23:51:09 · 340 阅读 · 0 评论 -
hdu 4424 Conquer a New Region 并查集
http://acm.hdu.edu.cn/showproblem.php?pid=4424题意是一棵树,每条边有边权,定义两点之间距离为两点之间路径上最小的那个边权,找一个点,使其他所有点到这个点的距离和最大想了半天树形dp,没思路,看了题解,发现好巧妙巧妙运用并查集,先按照边权从大到小对所有边排序,然后对于当前边,可以连接两个集合,注意集合内是已经通过之前更大的边连接好的,并查集的原创 2017-09-30 00:57:06 · 245 阅读 · 0 评论 -
hdu 6155 线段树加矩阵快速幂
http://acm.hdu.edu.cn/showproblem.php?pid=6155第一次做矩阵快速幂套线段树的题,感觉好神奇#includeusing namespace std;const int maxn=1e5+5,mo=1e9+7;struct NODE{ long long a[3][3];}t1,t2,be;NODE mult(NODE原创 2017-09-01 12:54:32 · 363 阅读 · 0 评论 -
hdu 6150 思维构造
http://acm.hdu.edu.cn/showproblem.php?pid=6150很好懂的一篇博客:http://blog.youkuaiyun.com/qq_31759205/article/details/77417889#includeusing namespace std;#define N 16vectorw[N+5];int main(){ int原创 2017-09-01 12:50:28 · 316 阅读 · 0 评论 -
hdu-5793 A Boring Question 打表找规律
http://acm.hdu.edu.cn/showproblem.php?pid=5793打表很容易看出规律是m^0+m^1+m^2+...+m^n=(1-m^(n+1))/(1-m)bc题解上的推导公式。。。。。。。#include#define eps 1e-9#define PI 3.141592653589793#define bs 1000000007#de原创 2017-09-04 13:48:15 · 295 阅读 · 0 评论 -
hdu-5745 La Vie en rose bitset
http://acm.hdu.edu.cn/showproblem.php?pid=5745第一次使用bitset这个东西,优点是可以常数优化,而此题优雅的bitset转移刚好可以卡过转移方程是看的这篇博客,http://blog.youkuaiyun.com/u012015746/article/details/51992281“首先得出一个 dp式子,dp[i][j][k]表示 A原创 2017-09-04 13:40:08 · 335 阅读 · 0 评论 -
You Are the One HDU - 4283 区间dp
http://acm.hdu.edu.cn/showproblem.php?pid=4283.题意:给一个序列数,按顺序不断的删除这些数,删除的消费为(index-1)*a[i] index为删除的次序(第几个删除),a[i] 为这个数的值, 你有一个栈,可以暂时存放一些数,也就是可以改变原来数删除的顺序,求最小的总消费加入你有序列 1 2 3 4我可以先把1删除(这时原创 2017-07-20 11:47:39 · 226 阅读 · 0 评论 -
B - 胜利大逃亡(续) HDU - 1429 bfs
胜利大逃亡(续)Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 8642 Accepted Submission(s): 3117Problem DescriptionIgnatius再次被魔王抓走了(搞不懂他原创 2017-05-25 21:32:23 · 381 阅读 · 0 评论 -
FatMouse and Cheese hdu-1078
FatMouse and CheeseTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 9832 Accepted Submission(s): 4147Problem DescriptionFatMou原创 2017-05-01 21:37:57 · 279 阅读 · 0 评论 -
HDU - 5976 Detachment 贪心
DetachmentTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 895 Accepted Submission(s): 258Problem DescriptionIn a highly devel原创 2017-05-01 17:34:32 · 354 阅读 · 0 评论 -
HDU 2209 C - 翻纸牌游戏
C - 翻纸牌游戏Time Limit:3000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64uSubmit Status Practice HDU 2209Description有一种纸牌游戏,很有意思,给你N张纸牌,一字排开,纸牌有正反两面,开始的纸牌可能是一种乱的状态(有原创 2016-10-31 21:04:10 · 448 阅读 · 0 评论 -
HDU 5500 Reorder the Books
Reorder the BooksTime Li: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 1428 Accepted Submission(s): 752Problem Descriptiondxy has a原创 2016-11-23 19:39:09 · 290 阅读 · 0 评论 -
HDU 5744 Keep On Movin// 2016 Multi-University Training Contest 2
Keep On MovinTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1016 Accepted Submission(s): 716Problem DescriptionProfessor Zha原创 2016-11-23 19:18:42 · 287 阅读 · 0 评论 -
HDU - 1520 Anniversary party 树形dp
Anniversary partyTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 10129 Accepted Submission(s): 4289Problem DescriptionThere i原创 2017-02-09 00:12:02 · 269 阅读 · 0 评论 -
HDU 1593 find a way to escape
find a way to escapeTime Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1995 Accepted Submission(s): 766Problem Description一日,话说0原创 2016-11-26 21:43:17 · 323 阅读 · 0 评论 -
BestCoder Round #89 1001 /hdu 5944 / Fxx and string
Fxx and stringTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submission(s): 722 Accepted Submission(s): 315Problem DescriptionYoung theore原创 2016-11-01 21:01:33 · 250 阅读 · 0 评论 -
BestCoder Round #89 1001 /hduoj 5944/Fxx and string
Fxx and stringTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submission(s): 722 Accepted Submission(s): 315Problem DescriptionYoung theore原创 2016-11-01 21:03:52 · 269 阅读 · 0 评论