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

原创 9.21做题整理

T1 51nod 1639 系鞋带n条鞋带,进行n次正确操作后才会变成一个环。每次进行正确操作的几率是(2*i-2)/(2*i-1),每次进行正确操作后会鞋带数量会减一,可以递归完成。T2 poj 1275本质是一个建模稍复杂的差分约束系统,加上二分,spfa判负环 其实也没特别理解..T3 动态逆序对cdq分治。 %一发cdq大神。先按t排序,接着类似归并排序地解决..每次用左边的修改更新

2017-09-22 08:04:45 251

原创 洛谷 P1021 邮票面值设计-简单搜索+dp

是一道很基础的搜索题啊。 但是我对这种简单搜索的练习真的比较少,大多是图上搜索,所以写了这道题的题解。题目传送门怎么说呢,就是 从1到k 暴力枚举每种邮票的面值,到k+1时更新答案。 唯一需要好好想想的就是 每次枚举面值的上界和下界。 下界是 上一枚邮票的面值+1,上界是前几枚邮票能组成的MAX面值+1。因为如果这枚邮票面值为MAX+2,很明显MAX+1的总面值不能被组成。至于代码.. 参

2017-09-17 10:04:37 688

原创 树形DP例题整理

与普通dp类似,但是状态遍历不能简单的++i,而应该按由儿子到父亲的顺序完成。可以通过DFS递归完成,也可以按DFS(BFS)序从大到小完成,以保证先完成儿子再完成父亲。例题一 皇宫看守 tyvj_3384/vijos_1144 每个节点有三个状态f[i][0]代表i子树全都被染色的代价,由每个儿子的min(0,2)转移而来,且有一个儿子必须为2;f[i][1]代表i子树(不包括i)全部被染

2017-08-17 17:40:56 585

原创 树状数组区间修改区间查询

刚学的 折腾了一上午终于弄好了树状数组几种用法(不全): ①单点修改区间查询(基本) ②区间修改单点查询(差分) ③区间修改区间查询(维护贡献) 我只特意整理了第三种用法 下方代码#include<cstdio>#include<iostream>#define db delta_before#define da delta_after#define ll long longus

2017-08-16 17:59:42 528

原创 逆元

http://www.cnblogs.com/linyujun/p/5194184.html

2017-08-08 22:07:44 199

原创 POJ 2406-巧用next数组

原题 这道题我还没弄懂 但是看了看题解把代码写出来并且A掉了…#include<cstdio>#include<iostream>#include<cstring>using namespace std;int n,next[10000010];char s[10000010];void get_next(const char s[],int next[]){ next[0]=

2017-07-26 15:47:57 221

原创 UVA1572 Self_Assembly-拓扑排序

先上一发淳朴的拓扑排序模板 大家如果想检验自己写的拓扑排序模板对不对,可以交一下哈理工oj1631,是一道纯拓扑排序。 这个讲拓扑排序的文章也很好。↓↓↓ http://blog.csdn.net/dm_vincent/article/details/7714519#include<cstdio>#include<queue>#include<iostream>#include<vect

2017-07-25 14:40:08 302

原创 算法整理:最小生成树(mst)-Prim+Kruskal

Kruskal大概思想:用并查集储存两点是否连通,将边按权重排序,每次取出权重最小的边,如果该边两端的点未连通,将该边的权重加入ans。最后判断是否每个点都和1(任意点)连通,若连通说明存在最小生成树,权和为ans;否则不存在最小生成树。 时间复杂度:O(e loge) 接下来是我的代码,在luogu通过了测试。#include<cstdio>#include<iostream>#inclu

2017-07-23 16:48:16 304

原创 POJ3461-字符串匹配(基础)

这道题很水..很基础.. 纯kmp就能过.. 但这是我第一次用kmp,感觉好厉害,所以写这个博客来加深对kmp的印象。 附上我看的kmp算法讲解 (这么好的博客居然只有25粉丝) http://www.cnblogs.com/c-cloud/p/3224788.html 然后是我的蒟蒻幼稚代码 代码风格幼稚到底算是优点还是缺点呢?#include<cstdio>#include<i

2017-07-22 17:04:53 379

原创 NOIP2012 Day2 借教室-二分答案+差分

我 我 我 我怎么就想不起来二分答案呢… 老规矩先上原题http://codevs.cn/problem/1217/ 然后是我看的题解http://www.cnblogs.com/iwtwiioi/p/3536121.html 真的是 相当水的二分答案啊..(虽然我没想到ORZ) 但是题解的丧病加速还是给了我惊喜23333上我的蒟蒻代码 因为犯懒所以全用的long long#inc

2017-07-21 15:50:43 485

原创 POJ1185-状态压缩dp

有了poj3254的基础后,这道题实际上是一道很基础的状态压缩dp,听说是acm??感觉不难啊??? 大体做法和poj3254相同 这是我写的poj3254的题解 自认为我的代码是网上能找到的最简单(最幼稚)的。#include<cstdio>#include<algorithm>#include<iostream>#include<cstring>using namespace st

2017-07-20 16:26:10 317

原创 UVA1599-字典序+BFS

第一次写这么复杂的bfs,卡了我近一周,需要注意的细节很多,很多地方感觉跟题解差不多,但是就是不对。失之毫厘谬以千里啊。这里是原题 这里是我当时看的一个比较好的题解(里面用的指针我不懂 但思路非常棒)大概做法先从n开始bfs,得到每个点到n的最短距离d[i]。然后从起点开始bfs,每一步保证d[v]=d[u]-1,同时储存最小字典序代码#include<cstdio>#include<iost

2017-07-19 14:15:40 452

原创 poj3254-二进制状态压缩

第一次接触二进制状态压缩 感觉很玄学很厉害 这里是原题 这里是我当时看的题解 题目大意:有n*m(1<=n,m<=12)的矩形草场 能放牛地方用1表示 不能的地方用0表示 两头牛不能挨着 求有多少种放牛方法(放0头牛也算一种方法) 嗷我翻译的好垃圾 很明显是一道dp题 dp[i][j] i为第几行 j为草场状态(如:100011101) 可以将草场状态看作二进制 然后用int 表示

2017-07-18 14:57:13 409

原创 最长不下降子序列的o(nlogn)算法

原理用数组d[k]存储 长度为k的子序列们的最小末尾值 可知d[k]是单调不下降的 所以可以用二分查找 可以用set+结构体实现 但是我二分查找不太好..所以手写二分查找 而且手写的跑起来也比stl快代码#include<cstdio>#include<cstring>#include<iostream>using namespace std;int n,a[100010],d[1

2017-06-30 17:40:17 889

原创 [NOIP2003]区间dp-加分二叉树

题目描述见luogu https://www.luogu.org/problem/show?pid=1040是很明显的区间dp 我企图用平行四边形优化 未遂 因为我区间dp不是很熟 所以把这道题摆上来 是一道很好的模板题 其中用d[i][j]记录切点也给二叉树的遍历提供了不错的例子 需要注意的点都在代码里注释了 f[i][j]=f[i][k-1]*f[k+1][j]+a[k]#inclu

2017-06-28 16:53:30 372

原创 一个开始

一个开始开始对自己学过的东西、做过的题做整理,以此加深印象,希望是个好的开始。对自己起的用户名总是不满意。 附:markdown真神奇 2017.6.28 16:01

2017-06-28 16:02:36 236

空空如也

空空如也

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

TA关注的人

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