• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
XD-TEST
博客园    首页    新随笔    联系   管理    订阅  订阅
2016年9月11日
HDU5870 Alice's Adventure in Wonderland
摘要: 大概做法是这样的 考虑最朴素的做法,预处理出1到所有点的最短路数组dis1和方案数数组cnt1,和预处理出n到所有点的最短路数组dis2和方案数数组出cnt2,然后暴力枚举点对(A,B),如果A和B之间没有连边,那么就可以考虑添加一条正权边,满足这个条件就能添加dis1[A]+dis2[B]+1<= 阅读全文
posted @ 2016-09-11 12:34 fzmh 阅读(454) 评论(0) 推荐(0)
2016年8月6日
codeforce 121E - Lucky Array
摘要: 10^4以内只由4和7构成的数字只有31种,那么做法就很简单了,求出每个数字与其最接近的幸运数的差值,然后建立线段树,线段树维护区间最小值和最小值个数,如果操作过程中最小值<0,那么就去对差值进行暴力修改,直到区间差值>=0,很明显线段树每个叶子节点不会被修改超过31次,询问操作的话差值=0的数字就 阅读全文
posted @ 2016-08-06 11:02 fzmh 阅读(283) 评论(0) 推荐(0)
2016年8月1日
BZOJ1095 [ZJOI2007]Hide 捉迷藏
摘要: 动态树分治,用三个set分别维护每个重心到每一个子树的距离种类、每个重心所有子树的最大值和次大值、全局答案的最大值。复杂度O(nlogn^2) 代码 阅读全文
posted @ 2016-08-01 00:07 fzmh 阅读(233) 评论(0) 推荐(0)
2016年7月20日
hdu5722 Jewelry
摘要: 题意就是说问有多少个区间,其中有至少一种种类的宝珠出现的次数恰好为x次。 先预处理出每一个位置的宝珠下一个出现与其同种类的宝珠位置next和上一个出现与其同种类的位置pre 考虑在第i个位置的宝珠,要使其出现恰好x次,我们可以找到在i之后恰好出现了x次的位置j,这步操作可以用一定的技巧优化到O(1) 阅读全文
posted @ 2016-07-20 13:47 fzmh 阅读(383) 评论(0) 推荐(0)
bzoj3884 上帝与集合的正确用法
摘要: a^b mod P=a^(b mod phi(p)) mod p,利用欧拉公式递归做下去。 代码 阅读全文
posted @ 2016-07-20 13:45 fzmh 阅读(558) 评论(0) 推荐(0)
2016年6月19日
hdu5219 Repeating
摘要: 后缀数组+莫比乌斯函数 阅读全文
posted @ 2016-06-19 20:18 fzmh 阅读(283) 评论(0) 推荐(0)
2016年6月14日
个人训练记录-赛码"bestcoder"杯中国大学生程序设计冠军赛
摘要: A.Movie 题意是给n个线段,要求求出是否存在三个不相交的线段,是的话输出yes,否则输出no。根据贪心的想法,可以先找出右端点r'最小的线段,他是三条线段中最左的那条,再找出左端点l'最大的线段,他是三条线段中最右的那条,这样我们只需要找出是否存在一条线段可以放在中间,即区间[l,r],l>r 阅读全文
posted @ 2016-06-14 13:35 fzmh 阅读(441) 评论(0) 推荐(0)
2016年5月29日
hdu5713 K个联通块[2016百度之星复赛B题]
摘要: dp 代码 阅读全文
posted @ 2016-05-29 22:52 fzmh 阅读(511) 评论(2) 推荐(0)
hdu5714 拍照[2016百度之星复赛C题]
摘要: 由于船移动的速度都一样,那么对于往一个方向的船相对距离其实是不变的,我们可以把往一个方向移动的船都视作静止,并求出在哪些观测位置可以看到,很明显对于船[x,y,z],当x+z>=y-z的时候,可以在[y-z,x+z]这些位置观测到它,这些位置的观测数全都+1,然后考虑不同方向,假设初始在x位置观测往 阅读全文
posted @ 2016-05-29 20:23 fzmh 阅读(435) 评论(0) 推荐(0)
hdu5715 XOR 游戏 [2016百度之星复赛D题]
摘要: 比赛的时候没仔细想,赛后一想这题其实挺简单的,先求出序列的异或前缀和,然后将异或前缀和建出一颗trie树,然后我们可以二分答案,把问题变成判定性问题,判定是否存在一种方案,使得所有的分组的异或和都大于等于这个二分的答案,然后就可以dp了,用f[i][j]表示到j为止能不能分成i组,f[i][j]=f 阅读全文
posted @ 2016-05-29 20:15 fzmh 阅读(592) 评论(0) 推荐(0)
下一页
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3