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

原创 ZOJ 3940

一个很暴力的递归拆分过程改成priority_queue就过了,醉了 #include #include #include #include #include #include #include using namespace std; typedef long long ll; typedef long long LL; const int mod = 1e9 + 7; co

2016-04-28 09:18:22 564

原创 HDU - 5673(catalan数的应用)

分析: 记路径长度为nn,那么机器人最多向右走\lfloor \frac{n}{2} \rfloor⌊​2​​n​​⌋步并向左走\lfloor \frac{n}{2} \rfloor⌊​2​​n​​⌋步。 Ans(n) = \sum_{i=0}^{\lfloor \frac{n}{2} \rfloor} C_n^{2i} \ Catalan(i)Ans(n)=∑​i=0

2016-04-25 16:01:10 555

原创 HDU 4876(就是暴)

题意:    给定n(n 思路:   怎么想都会超时,就用最暴力的方法了,剪纸 + 减少枚举,   首先可以先将C(n,k)中可选的数的组合枚举出来,我们发现不需要枚举出所有的这k个数的排列依次判断,因为是环状 , 可以从K!降到(K -1)!  然后跟据当前获取的最大值做可行性剪枝。  #include #include #include #include using na

2016-04-15 10:35:29 427

原创 uva 1618(枚举技巧)

直接说解法:    我们只考虑1 Ns > Np > Nr 的这种情况,先枚举 p , q 的位置 , 那么先选s的位置,s的位置越靠后越好,这样会留下更大的空间选r 又知道所有数不同,离散化位1 到 n ,   那么假设p , q 位置确定  ,以pos数组记录每个1 -- n 每个离散化后的数对应的数组位置, 那么 s的最佳位置为 pos数组 上 Np + 1 --> Nq - 1 这个

2016-04-11 20:30:41 916

原创 uva 10884(经典序列)

先存下用规划找出个数的代码 #include #include #include #include #include #include using namespace std; typedef long long ll; typedef pair pii; #define rep(i,n) for(int i =0;i<(int)n;i++) #define rep1(i,x,y)

2016-04-10 13:03:00 698

原创 hdu 5661

考虑从高位到低位贪心,对于每一位,如果x,y只有唯一的取法,那么只能这么取;否则贪心地必须使答案的这一位等于1。如果x,y都是0,1都能取,则设这是从右向左数第len位,因为x,y能取的值一定都是连续的一段,因此x,y的后len位都能取0111...1(len-1个1)和1000...0(len-1个0)(否则做不到从右向左数第len位都能取0,1)。也就是说,后len位的贡献一定能达到可能的上界

2016-04-10 09:45:24 620

原创 hdu 5662

一个很简单的问题,暴力枚举k,然后每次的复杂度位O(n/k);这样很明显的nlog(n); 至于每次在数组A 上求一个L , R 使得sum(L , R) * MIN(L ,R) 最大,只需维护每个点的最大延伸区间,可以用栈边走变维护,或者直接保留成数组递推。 #include #include #include #include #include using namespace s

2016-04-10 09:43:25 427

原创 (AC自动机 + 矩阵加速)

题意:     给定最多十个最长不超过10的病毒dna串,求长度为m(m 分析:    用自动机建立状态转移图,然后建立转移矩阵    定义初始状态为[1 , 0 , 0 , 0  ....]代表当前长度为0可转移到各个状态的方案数目,然后乘上m次转移矩阵即答案。 #include #include #include #include #include using names

2016-04-08 09:50:00 404

原创 CodeForces 570D(dfs序 or 离线dfs)

题目意思:     给定一颗root为1的树,节点最多5e5个,每个节点有一个英文字母,要求在指定子树根节点x,和指定深度y,求该子树y深度所有节点的字母能不能组成回文串。 解法1:    利用dfs序,为所有点标上进出两个标记,既可以代表一个区间(dfs序很重要的一个应用),顺便将每个深度下所有的单个字母出现的标号统计到相应的vector中后, 在计算答案时进行26次二分上下界求

2016-04-06 14:24:11 485

原创 HDU 4123(RMQ(o1)模板 , 树直径)

题目的意思: 给出N(n 先求出每个点的最远到达距离,树直径简单求解方法。 RMQ处理得到的最远距离数组,线性扫描求每个值 #include #include #include #include #include using namespace std; typedef long long ll; #define lson l,m,rt<<1 #define rson m+1,r

2016-04-05 20:51:31 338

原创 FZU 2082(树链剖分模板题)

一颗树边上的权在变动,动态求两点之间的和。 #include #include #include #include #include #include #include #include #include using namespace std; #define LL long long #define pi acos(-1.0) //#pragma comment(linke

2016-04-05 20:06:27 329

空空如也

空空如也

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

TA关注的人

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