自定义博客皮肤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)
  • 收藏
  • 关注

原创 poj2104 (线段树求区间第k大)

题目链接:题意:给n个数, 每次询问一个区间, 让你输出区间中的第k大的数。做了这道题,我对线段树的能解决的问题得认识又有提升。 这个是让求区间内的第k大, 询问比较多,暴力显然不行。 我们想用线段树解题,那么线段树应该保存什么呢? 一开始更本没想到, 看了别人的博客明白了, 原来是把线段树上的每一个区间都变成有序的, 并把这个排列的顺序存在另一个数组里, 我们只在线段树中存下这一段序

2015-07-30 10:01:39 2025

原创 NYOJ zkc学长的福利(贪心+高精度运算)

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=1218分析:因为人的排的顺序不一样, 最后的结果也不一样;题上说为让的到最多肉松的人得到的最少,所以很明显就是贪心, 而这道题贪心的目的就是得到一个最优的排序。  这就需要我们找到一个排序的比较函数。假设对于A,B两人以前的顺序已经排好, 现在的问题就是A, B的顺序。 设前面

2015-07-28 00:33:58 1300 2

原创 BNUOJ 28887 A Simple Tree Problem(线段树, 区间查询,区间更新)

题目链接:http://www.bnuoj.com/v3/problem_show.php?pid=28887题意:给一颗树, 树根为1,节点总数为n。 每个节点都有一个标记,标记只用0和1,  初始化全部为0。 有两种操作:(1)o k; 把以k为跟的树上的节点标记全部取反.(2)q k;求出以k跟的树上节点标记为1的个数,并输出来。分析:这道题操作很类似线段的操作, 所

2015-07-22 12:17:01 480

原创 BNUOJ28891 Choosing number(矩阵快速幂)

题目链接:http://www.bnuoj.com/v3/problem_show.php?pid=28891题意:有n个人 选择m个数; 每个人可以任意选数 , 若2个相邻的人选择相同的数,当且仅当这个数大于k; 问总共有多少种方法选择数分析:对于这道题, 比赛的时候完全没想法, 怎么也没想到是矩阵快速幂;看了别人的博库之后, 仔细想想之后,好像只能用快速幂来做题, 问什么呢?

2015-07-22 11:43:13 348

原创 BNUOJ 28892 Flower (二分+网络流)

题目链接:http://www.bnuoj.com/v3/problem_show.php?pid=28892题意:在空间中给定n个点,给出每个点的三维坐标,以及每个点上已有的花的数目Fi,和可以从该点上移走的花的数目Li,因为每一次可以移动的距离有限,为R, 所以可以选择一个中介点进行转移,最后将所有的花都移动到第一个点上。因为可以从每个点上移走的花的数目有限,所以,可以通过修改每次

2015-07-21 20:32:54 382

原创 hdu 5285 wyh2000 and pupil(二分图的判定)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5285题意:这是BestCoder Round #48 里的第二题, 有汉语题意, 链接:http://bestcoder.hdu.edu.cn/contests/contest_chineseproblem.php?cid=609&pid=1002分析:要求把学生分成两组, 给

2015-07-20 10:17:22 491

原创 codeforces558C Amr and Chemistry

题目链接:http://codeforces.com/problemset/problem/558/C题意:给n个数, 可以每次对每个数乘2或除2(向下取整); 问最少用多少次可把n个数都变为相等。分析:由于n比较大,n^2就会超时;能过的只有O(n)orO(nlongn)算法。每次乘2除2又可以看成左移一位和右移一位,所以很容易想到在二进制下操作。但是做题的时候就想到了这, 之后

2015-07-18 15:33:47 508

原创 POJ1135 Domino Effect(最短路)

题目链接:http://poj.org/problem?id=1135题意:摆好的一个多米诺骨牌阵, 问你把多米诺骨牌全部推倒最短需要多长时间。骨牌分为两种, 一种是关键骨牌,另一种是非关键骨牌。给你n个标号从1~n的关键骨牌,m行关键骨牌A,B;并且给出从骨牌阵的关键骨牌A到关键骨牌B全部推倒所需的时间L,(从B到A所需的时间也是L); 每次都是从关键骨牌1开始推倒骨牌。则把骨牌

2015-07-17 09:51:48 507

原创 NYOJ167 小珂的工作

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=167分析:题目的意思就是让求k种病毒所包含的最多的奶牛的个数。找包含关系的最大数目;包含关系我们可以用位运算里的按位或(|)运算符。如果a包含b则,a=a|b, b=a&b;用的这个思想之后就直接按病毒的个数深搜, 求当病毒的个数为k个时再找共有多少头奶牛,就可以了。#incl

2015-07-15 18:12:40 446

原创 NYOJ166 小珂的数学题(数位dp)

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=166分析:这道题的做法应该很多, 我看到有人用组合数学做的(真是大牛啊); 我以开始也想用组合数学做,但是找了一个小时也没弄出来。 然而发现用数位DP(记忆化搜索)可以做的。dp【d】【num】表示:第d位上不大于num的种类的个数记忆化搜索是传三个参数 d, num, f

2015-07-14 22:48:12 929

转载 NYOJ 161 取石子(四)(威佐夫博弈)

转载地址:http://blog.pureisle.net/archives/225.html威佐夫博奕(Wythoff Game):有两堆各若干个物品,两个人轮流从某一堆或同时从两堆中取同样多的物品,规定每次至少取一个,多者不限,最后取光者得胜。这种情况下是颇为复杂的。我们用(ak,bk)(ak ≤ bk ,k=0,1,2,…,n)表示两堆物品的数量并称其为局势,如果

2015-07-13 16:54:04 316

原创 BestCoder Round #47

BestCode比赛里有汉语的题意, 并且每道题都有官方的题解,这里都不在描述了hdu5280 Senior's Array这道题就是让求改一个数组元素之后的数组的最大连续和, 求最大的连续和的是O(n)的复杂度, 然后我们可以枚举改变每一个元素再求最大连续和;复杂度为O(n^2).#include#include#includeusing namespace std;

2015-07-12 17:13:02 341

原创 NYoj110 剑客决斗

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=110分析:      这道题真是没想到是动态规划,已开始认为是图论,想了好久只有最大流才能求出值,但是构不图。。(还是太弱啊)。 看了一篇博客 才知道是区间动态规划。考虑 x 是否能赢得战斗,把环看成链,x点拆成两个,分别作为链的起点和终点。这样能胜出的条件就是自己和自己相遇。

2015-07-11 10:38:28 660

原创 codeforces 557D Vitaly and Cyclef(二分图染色)

题目链接:http://codeforces.com/problemset/problem/557/D大意:      给出n个点以及m条边,以及没条边的两个点,求最少添加几条边能得到一个奇环,以及添加边的方法数。一道二分图的染色的讨论题       二分图中只有树或偶环, 奇环不能存在二分图中(自己可以画画), 所以我们可以用二分图的染色的方法来判断奇偶环或树。分析:

2015-07-10 22:43:28 360

原创 NYoj89 汉诺塔(二)

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=89记忆化搜索模拟一下就可以了dfs(x, t)函数表示:表示前x个盘子全部移到地t柱子上所需的最少步数#include#include#include#includeusing namespace std;const int maxn = 50;int a[maxn

2015-07-10 11:28:44 401

转载 codeforces 557c Arthur and Table

题目链接:http://codeforces.com/problemset/problem/557/C题目大意:      给出一个桌子,有n个腿,每个腿的长度是l,拆掉这条腿的花费是d,当最长的腿占腿总数大于其他腿的总数,那么合法,问如何才能花费最小到达合法情况题目分析:      想到枚举最后的最长的那条腿的方法,比这条腿长的腿一定是要拆掉的,所以可以预处理出比长度为i的腿拆掉

2015-07-10 09:23:28 556

空空如也

空空如也

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

TA关注的人

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