自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

藏经阁 | 玄苦

技术博客: https://chenguolin.github.io/

  • 博客(20)
  • 资源 (2)
  • 收藏
  • 关注

原创 【ICPC-400】poj 2481 Cows

点击打开链接poj2481思路:线段树+单点更新分析:1 题目给定n头牛所在的区间,然后问每头牛都有几头牛比它强壮2 根据题目如果牛i的区间是[Si , Ei],牛j的区间是[Sj , Ej]那么牛i要比牛j强壮的话那么就有Si <= Sj && Ei >= Ej && Si-Ei != Sj-Ej;3 那么根据上面的条件,我们应该要先...

2012-12-30 22:51:11 1121

原创 【ICPC-401】poj 3067 Japan

点击打开链接poj 3067思路:线段树分析:1 题目要求的是找到所有直线的交点总数,并且题目明确指出两条直线之间最多只有一个交点2 很明显我们应该先对这些直线进行排序:按照左边的编号从小到大,左边编号相同时按照右边编号从小到大。那么假设现在有一条直线1-3,那么能够和这条直线有交点的肯定是右边的编号大于3的,那么这个过程就可以利用线段树的查找,查找完毕还要更新线段树。3 由于题...

2012-12-29 15:46:29 1159

原创 【ICPC-405】hdu 2689 Sort it

点击打开链接hdu2689思路:线段树+单点更新分析:1 题目给定n个数要求最少的交换次数使得序列有序2 显然两个数要交换肯定是满足i < j && num[i] > num[j]。那么假设现在读入一个数num[i],我们要求这个数num[i]要和前面的交换几次使得序列有序,就是查找num[0]~num[i-1]之间比num[i]大的数的个数,那么这个过...

2012-12-27 17:00:57 734

原创 【ICPC-427】hdu 2795 Billboard

点击打开hdu 2795思路: 线段树+单点更新分析:1 题目的意思是给定一个h*w的广告牌h为高,w为宽,现在有n个高为1宽为wi的小广告要放上去,原则是最先放最上面和最左边的位置2 题目的h和w的最大值为10^9,但是n最大为200000。所以我们可以知道最多用掉的广告牌就是x = min(n , h),而这个值就是200000,所以我们可以把每一行作为一个点来利用线段树,线段...

2012-12-26 12:36:40 924

原创 【ICPC-403】hdu 1394 Minimum Inversion Number

点击打开hdu 1394思路: 树状数组分析:1 题目要求的是n个数的n个序列中找到的最小逆序数对2 首先我们都知道所谓的逆序数对就是给一个序列,如果前面的数比当前的数大,那么这两个数就是逆序数对。比如4 1 3 2中逆序数有 4 1, 4 3, 4 2, 3 23 那么我们可以很快的利用树状数组求出起始数组的逆序数对,那么我们接下来考虑把第一个数换到最后一个位置的情况...

2012-12-25 21:51:16 1035

原创 【ICPC-426】poj 3264 Balanced Lineup

点击打开链接poj3264思路:线段树分析:1 要求区间的最大值和最小值的差值2 建立一棵线段树,节点保存这个区间的最大值和最小值,然后写两个查询函数,一个返回最大值一个返回最小值,然后相减即可。代码:#include<iostream>#include<cstdio>#include<cstring>#include&lt...

2012-12-24 19:39:56 719

原创 【ICPC-6】Codeforces Round #154 (Div. 2)

点击打开链接codeforce#154A思路:水题分析:题目要求‘B’和‘G’是交替出现,所以应该要注意判断一下男生和女生的数量,然后是先B还是先G。代码:#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespa...

2012-12-23 22:56:44 776

原创 【ICPC-425】hdu 1754 I Hate It

点击打开链接hdu 1754思路: 线段树+单点更新分析:1 线段树的水题代码:/************************************************ * By: chenguolin * * Date: 2013-09-01 ...

2012-12-22 14:08:49 884

原创 【ICPC-404】hdu 1166 敌兵布阵

点击打开链接hdu 1166思路: 线段树单点更新分析:1 题目给定n个兵营的人数,现在有三种操作(1)Add i j,i和j为正整数,表示第i个营地增加j个人(j不超过30)(2)Sub i j ,i和j为正整数,表示第i个营地减少j个人(j不超过30);(3)Query i j ,i和j为正整数,i<=j,表示询问第i到第j个营地的总人数;2 最简单的线段树...

2012-12-21 22:39:14 1306

原创 【ICPC-407】poj 2352 Stars

点击打开链接poj2352思路:树状数组分析:1 题目是要求出每一个点的左下(正左+正下)有几个星星,那个这个点就是第几层,最后输出0~n-1层的点的个数。比如样列编号为5的星星,左下有3个星星那么5就处于第三层2 利用树状数组,我们知道树状数组C中,C[i]表示的是原先数组A中的某一段和。题目明确指出输入的时候是按照y值增大的顺序(y相同是x增大),那么我们应该要用什么做为原先的数组A...

2012-12-20 11:34:32 3399

原创 【ICPC-460】线段树

线段树 一 什么是线段树 线段树是一棵二叉树,树中的每一个结点表示了一个区间[a,b]。每一个叶子节点表示了一个单位区间。对于每一个非叶结点所表示的结点[a,b],其左儿子表示的区间为[a,(a+b)/2],右儿子表示的...

2012-12-19 23:10:40 1295 1

原创 【ICPC-40】BUNOJ 11552 Dominating Patterns

点击打开链接bnuoj11552思路:AC自动机模板题分析:1 先对n个模板串构造trie树并且求出失配边2 然后在文本串上面查找,找到是单词节点就把当前的单词个数加1,最后枚举输出即可。代码:#include<iostream>#include<cstdio>#include<cstring>#include<que...

2012-12-18 23:19:58 878

原创 【ICPC-39】hdu 3695 Computer Virus on Planet Pandora (没过+TLE)

/*hdu 3695 TLE 题*/#include<iostream>#include<cstdio>#include<cstring>#include<queue>#include<algorithm>using namespace std;#define MAXN 5100010#define...

2012-12-18 22:06:01 997

原创 【ICPC-38】hdu 1277 全文检索

点击打开链接hdu 1277思路:AC自动机模板题分析:1 只要把输入处理成一个字符串,然后对关键字建立trie树和求next2 注意题目是说按照匹配到的顺序输出,所以这个地方注意一下。代码:#include<iostream>#include<cstdio>#include<cstring>#include<algorit...

2012-12-08 16:25:43 912

原创 【ICPC-5】Codeforces Round #153 (Div. 2)

点击打开链接cf #153A思路:暴力分析:1 题目给定n个数 n<=100,要求一个区间内做^能够得到的最大值2 n最大为100,暴力枚举区间即可。代码:#include<iostream>#include<cstdio>using namespace std;#define MAXN 110int n;int num...

2012-12-08 14:07:51 726

原创 【ICPC-37】hdu 3065 病毒侵袭持续中

点击打开链接hdu 3065思路:AC自动机模板分析:1 题目要求找出相应的字符串在源码串中出现的次数,并且告诉我们字符串只有大写字母。其实解法是一样的,只是别被大写字母这个给限制了,还是相当于建立trie,但是不能单建立大写字母的trie树。2 当匹配到一个单词的时候就把单词对应的编号对应的个数加加。代码#include<iostream>#include...

2012-12-06 22:33:06 736

原创 【ICPC-36】hdu 2896 病毒侵袭

点击打开链接hdu 2896思路:AC自动机分析:1 题目输入n个字符串,然后输入m个源码串。对每一个源码串要求找到里面包含了几个字符串,如果有包含则按照从小到大输出字符串的编号,否则不输出。2 典型的ac自动机。首先利用n个字符串建立字典树并且在字典树上面求出失配指针。然后对每一个输入的源码串进行find()即可。3 ASCLL字符表可见字符(可打印字符)从32~126...

2012-12-06 18:02:22 722

原创 【ICPC-35】hdu 2222 Keywords Search

点击打开链接hdu 2222思路:AC自动机的模板题分析:AC自动机的三个步骤1 利用文本串建立字典树2 在字典树上面构造失配指针3 在字典树上面匹配,求出个数。代码:#include<iostream>#include<cstdio>#include<cstring>#include<queue>#includ...

2012-12-05 21:06:21 797

原创 【ICPC-4】 Beta Round #10

点击打开链接cf#10A思路:模拟分析:1 题目要求找到总共的电脑的消耗。题目明确指出在n个时间段之内电脑都是属于第一种状态,并且如果不是第一种状态只要移动鼠标或按键盘马上变为第一种状态。2 题目还指出每一组输入都保证L<R,并且Ri-1<Li。那么我们只要每输入一个就处理一个即可。代码:#include<iostream>#include&l...

2012-12-05 17:44:56 748

原创 【ICPC-459】全排列问题

一 给定一个字符串求该字符串的第k个子串。1 一个长度为len的字符串,它的总的子串的个数为1+2+3...+len = len*(len+1)/2;2 利用优先队列的方法:最开始先用char数组存入1个字符,因为刚开始肯定是1个字符,然后出队再将出队的那个字符串最后一个字符的下一个字符合并后再压入队列中,出队k-1次后第k次出队的就是第k大的。比如abc,先进a,b,c,然后a先...

2012-12-01 00:42:49 837

STL_详细解释

STL_详细解释 , 有利于大家对STL的更深层次的认识

2012-08-05

uva 50个题解

有uva刘汝佳文件夹的50道题解,从数据结构开始,以后慢慢上传

2012-07-22

空空如也

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

TA关注的人

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