自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 HDU5493 Queue(线段树)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5493 题意: n个人按身高站队, 给出每个人的身高和前面或后面比他高的人数。 如果可以输出按身高的字典序最小的方案。否则输出 impossible。 分析:用线段树来保存比当前这个人高的人数,用比自己高的人数来确定自己应该的站的位置。 为了保证字典序最小优先线段树的左边。 #include #

2015-09-30 09:49:34 380

原创 poj 1442 Black Box(trap模板 求整个序列的第k大

#include #include #include #include #include using namespace std; const int maxn = 3*1e4 + 10; struct Node { Node* ch[2]; int r, v, s; Node(int v) : v(v) { ch[0] = ch[1] = NULL

2015-09-28 21:23:38 304

转载 c的free和c++的delete的区别

转载地址:http://blog.csdn.net/gukesdo/article/details/7506155 首先free对应的是malloc;delete对应的是new;free用来释放malloc出来动态内存,delete用来释放new出来的动态内存空间。 应用的区别为: 1. 数组的时候int *p=(int*)malloc(10*sizeof(int)) 释放的时候

2015-09-26 10:05:55 352

原创 hihoCoder 1236 Scores 五维偏序 (分块 + bitset)

题目链接:http://hihocoder.com/problemset/problem/1236 分析: 分块处理。 #pragma comment(linker, "/STACK:1024000000,1024000000") #define sspeed ios_base::sync_with_stdio(0);cin.tie(0) #include #include #include

2015-09-23 19:34:47 1050

转载 HDU 5458 Stability(LCA倍增算法, 并查集缩点(一般都是连通缩点))

转载地址:http://www.cnblogs.com/oyking/p/4821902.html 题目大意:给一个N个点M条边的无向图,有Q个询问:1、删掉a、b之间所存在的边;2、询问有多少条边,单独删掉之后a与b不再连通。 思路:脑洞大开。 对于询问,首先想到的就是a与b之间有多少桥(割边),然后想到双连通分量,然而删边是个坑爹的问题,于是我们离线倒着来,把删边变成加边。 双连通分量

2015-09-23 12:32:35 663

转载 HDU5452 Minimum Cut(树链剖分)

转载地址:http://www.hardbird.net/hdu-5452-minimum-cut%EF%BC%88%E6%A0%91%E9%93%BE%E5%89%96%E5%88%86%EF%BC%89/ 题意: 给一个无向图和它的一个生成树,要求找到一个最小割,使得有且只有一条生成树上的一条边属于割集,输出割集的大小。 分析: 因为生成树中只有一条边属于割集,那么割对生成

2015-09-22 11:20:01 589

原创 HDU 5442 Favorite Donut(后缀数组)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5442 题意: 给一个长度为n的字符串。 选择从某个地方断开, 可以顺时针取, 也可以逆时针取。 求最大的字典序的串是在哪个位置断开的, 和取的方向。  输出优先级  字典序, 下标, 顺逆时针。 分析: 观察可知,如果把原串接在原串的后面得到新串, 我们就可以找到顺时针的所有的串。 在把新串反

2015-09-18 08:38:52 371

原创 codeforces Bear and Drawing

题目链接:http://codeforces.com/problemset/problem/573/C 题意: 有一棵n个点的树, 然后有两行列无限点的, 问这棵树能否画出。 能输出Yes, 否则输出No。 分析: 对于一个点,它衍生出来的最左端的点和最右端的点可以衍生出 >2个点。除了最左边和最右边的点, 最多只能衍生出2个点, 而这些点只能衍生一个点。则对于每个连接数>2的点,最多只有

2015-09-14 17:55:06 412

原创 NYOJ791 Color the fence(贪心)

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=791 题意: 有v升的涂料。给出涂每个数字1~9所需的涂料;如果可以涂,则输出涂出的最大数字, 否则输出-1; 分析: 涂料一定, 肯定涂出的数字越多,数字就越大。所以我们就可以在涂出数字最多的情况下,枚举每一位的可以数字取最大(从9开始枚举找打第一个符合既是答案)。 枚举的符合条

2015-09-10 15:26:05 443

原创 NYOJ742(DP)

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=742 分析: 怎么说的, 看了大牛的博客之后,感觉也不是太难, 就是写不出来。 这题需要两个dp数组;状态定义: dp【】:表示前 j 个数中, 第 i 段以 j 结尾, 分为  i 段的最连续大和; b【】 : 表示前 j 个数中,   分为 i 段的最大连续和; 转

2015-09-09 08:54:26 354

原创 NYOJ1023 还是回文(区间dp)

题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=1023 分析: 这道题是一个简单区间的dp, 状态定义为dp【i】【j】: i 到 j 这个区间形成回文的最小花费, 分两种情况讨论: s【i】 == s【j】: dp【i】【j】 = dp【i+1】【j-1】; s【i】 == s【j】: dp【i】【j】 = min(

2015-09-08 17:39:50 327

空空如也

空空如也

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

TA关注的人

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