自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ACMan

不要習慣了黑暗就為黑暗辯護; 不要為自己的苟且而得意洋洋; 不要嘲諷那些比自己更勇敢、更有熱量的人們。 可以卑微如塵土,不可扭曲如蛆蟲。

  • 博客(135)
  • 收藏
  • 关注

原创 poj2778DNA Sequence(AC自动机)

DNA SequenceTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 15327 Accepted: 5914DescriptionIt's well known that DNA Sequence is a sequence only contai

2016-09-20 19:02:55 439

原创 hdu5900QSC and Master(区间dp)

QSC and MasterTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 745    Accepted Submission(s): 275Problem DescriptionEvery schoo

2016-09-19 22:10:58 336

原创 hdu5880Family View(AC自动机)

Family ViewTime Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 707    Accepted Submission(s): 128Problem DescriptionSteam is a digit

2016-09-19 22:01:47 489

原创 hdu5861 Road(线段树成段更新+优先队)

RoadTime Limit: 12000/6000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 261    Accepted Submission(s): 58Problem DescriptionThere are n villages al

2016-08-18 21:10:00 704

原创 hdu4027Can you answer these queries?(线段树)

Can you answer these queries?Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65768/65768 K (Java/Others)Total Submission(s): 13697    Accepted Submission(s): 3150Problem Descriptio

2016-08-17 21:25:22 302

原创 hdu5834Magic boy Bi Luo with his excited tree(树形DP)

Magic boy Bi Luo with his excited treeTime Limit: 8000/4000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 823    Accepted Submission(s): 222Problem De

2016-08-17 20:12:38 650

原创 hdu2546饭卡(背包)

饭卡Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 23509    Accepted Submission(s): 8267Problem Description电子科大本部食堂的饭卡有一种很诡异的设计,即

2016-08-17 19:31:13 672

原创 hdu2196Computer(树形dp)

ComputerTime Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5837    Accepted Submission(s): 2927Problem DescriptionA school bought t

2016-08-16 11:25:38 256

原创 hdu4902Nice boat(线段树)

Nice boatTime Limit: 30000/15000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 2155    Accepted Submission(s): 975Problem DescriptionThere is an o

2016-08-13 15:59:14 311

原创 CodeForces 650B(二分)

B. Image Previewtime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputVasya's telephone contains n photos. Photo

2016-08-11 00:58:28 266

原创 hdu5816Hearthstone(状压DP)

HearthstoneTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 728    Accepted Submission(s): 355Problem DescriptionHearthstone is a

2016-08-11 00:50:40 395

原创 hdu5355Cake(dfs+set)

Problem DescriptionThere are m soda and today is their birthday. The 1-st soda has prepared n cakes with size 1,2,…,n. Now 1-st soda wants to divide the cakes into m parts so that the

2016-08-08 22:40:29 284

原创 poj2891Strange Way to Express Integers(中国剩余定理 不互斥)

DescriptionElina is reading a book written by Rujia Liu, which introduces a strange way to express non-negative integers. The way is described as following:Choose k different positive intege

2016-08-08 21:24:28 994

原创 hdu1006Biorhythms(中国剩余定理)

DescriptionSome people believe that there are three cycles in a person's life that start the day he or she is born. These three cycles are the physical, emotional, and intellectual cycles, and the

2016-08-08 19:56:52 2970

原创 HDU 4771(BFS)

Stealing Harry Potter's PreciousTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3151    Accepted Submission(s): 1422Problem Descript

2016-08-05 19:57:33 330

原创 hdu5802Windows 10(贪心+dfs)

题目大意调节音量s到t,上升音量每秒只能上升1,下降音量每秒为2*x,x为上一次下降的音量,如果下降时休息或者上升音量则x置为1,音量最低为0思路就是贪心的去选,每次下降到终点上的最近一点,或者终点下的一点,取得一个最小值就好。这题题意没弄明白,WA了好几发。AC代码:#include#include#include#includeusing namespace std;

2016-08-04 23:39:00 873

原创 hdu5781ATM Mechine(概率dp)

题意:已知ATM机中有最多n元钱,每次可以从ATM机中请求取出任意多的钱,若钱数足够则能成功取出,否则会受到一次警告.如果警告次数超过m次就会被当做小偷抓走.求在保证不能被抓走的前提下,若采取最优策略,期望多少步能够取走所有的钱.这题最优主要是采用一个二分的策略 E(i,j):存款的范围是[0,i],还可以被警告j次的期望值。E(i,j) = max_{k=1}^{i}

2016-08-04 11:42:24 309

原创 hdu5787K-wolf Number(数位dp)

题意是给你一个l,r,问你这中间的数字有几个符合K位数字全都不一样。这题比较明显的数位dp  dp[pos][p1][p2][p3][p4] pos表示当前位,p4表示前一位。这里要考虑前导0的情况,p4=10的时候表示前一位为0.档(p4==10 && u==0)时表示当前的这位为0并且前四位都为0.所以向下dfs的话 res+=dfs(pos-1,10,10,10,10,flag&&e

2016-08-03 20:23:38 1201

原创 hduLucky7(容斥+中国剩余定理)

给你一个区间,问你在这个区间内 不满足模m[i]等于a[i]的 并且能被7整除的个数有几个这题因为n只有15 所以直接状态压缩一下,把状态容斥一下就好了。注意乘法要用快速乘法,要不然会爆longlongAC代码:#include#include#include#include#includeusing namespace std;typedef __int64 ll;co

2016-08-03 13:30:06 416

原创 CodeForces 109B Lucky Probability

题意是由4和7组成的数字称为lucky number,给你两个区间 在这两个区间里随机选两个数字作为左区间和右区间。问你在这个区间中lucky number个数为k个的期望为多少。这题的思路就是先预处理出来所有的lucky number,遍历每个lucky number。 算出符合提议的情况有多少种。然后除以情况总数就好了。AC代码:#include #include #inc

2016-08-02 21:12:35 484

原创 hdu5791Two(dp)

题意就是给你两个数组,问这两个数组的相同的子序列有多少个。其实这题有点像变形的最长公共子串a[ i ]==a[ j ]时,dp[ i ][ j ]=dp[ i-1 ][  j ]+dp[ i ][ j-1 ]+1a[ i ] !=a[ j ]时 ,dp[ i ][ j ]=dp[ i-1 ][ j ]+dp[ i ][ j-1 ]-dp[ i-1 ][ j-1 ]AC代码:#i

2016-08-02 21:02:42 501

原创 POJ 1185炮兵阵地(状压DP+优化)

这题是个十分经典的状态压缩DP了如果直接状态压缩,每一行都是 2^10的复杂度,爆炸。所以可以根据题目的一些性质来进行优化,这里他说每一个炮弹周围两个格子不能放炮弹了。所以就可以把一些没有用的状态处理掉。只留下的有用的状态,这里可以用一个初始化来进行。stu这个数组来记录所有可能出现的状态,这个预处理一下就好了,num表示每个状态中1的个数。然后就暴力dp就好辣!dp[ i ]

2016-07-29 20:00:15 262

原创 hdu 5754 Life Winner Bo(博弈)

题解给的很详细我们依次分析每一种棋子。①王。首先注意一个3*3的棋盘,开始在(1,1),问走到(3,3)谁有必胜策略。穷举所有情况,容易发现这是后手赢。对于NN和MM更大的情况,我们把横坐标每隔3、纵坐标每隔3的点都画出来,这些点都是符合后手胜的。(因为无论先手怎么移动,后手都能重新移动到这些格子,直到到了终点)如果初始点不在这些点上,就必然

2016-07-26 20:07:23 248

原创 hdu4308 Saving Princess claire_(BFS)

题意就是给你一个图,从Y走到C,每次经过*都有一个固定的花费,Y是传送门,可以传送到任何其他的传送门,#是路障。输出最小的花费。AC代码:#include#include#include#include#include#includeusing namespace std;const int maxn=5010;int to[4][2]={1,0,-1,0,0,1,0,-1

2016-07-25 13:42:35 343

原创 hdu 4301Divide Chocolate(dp)

这题的题意是,给你一个2*n的巧克力,问你如果把他分成k块,有多少种分法dp[i][j][k] 表示的就是 ,第i 层 分成k块, 最后一层是分开的还是合上的 ,有多少种分法。AC代码:#include#include#include#include#includeusing namespace std;const int N=1000;const int mod=100

2016-07-25 13:35:34 248

原创 POJ 2195Going Home(最小费用最大流)

题意:给你一个图,H表示房子,m表示人,为你这些人进到房子的最小话费是多少。直接把源点和人建边,人和房子建边,房子和汇点建边。跑一边最小费用最大流就好。AC代码:#include#include#include#include#include#includeusing namespace std;#define rep(i,s,t) for(int i=s;i<=t;

2016-07-23 11:46:31 196

原创 HDU 4292Food(最大流+拆点)

http://acm.hdu.edu.cn/showproblem.php?pid=4292题意就是每个人都有喜欢的饮料和食物,但是这些饮料和食物有限,问你如何选才能使最多的人喝到自己喜欢的饮料和食物。这题主要就是想清楚如何建边,然后跑一个最大流就好了分别建立 源点指向饮料的边 饮料指向人的边 人指向自己的边(保证每个人只被走一次) 人指向食物的边,食物指向汇点的边。这里要把人的点

2016-07-23 10:28:38 218

原创 hdu5738(极角排序)

http://acm.hdu.edu.cn/showproblem.php?pid=5738题意就是给你n个点,问你有多少个集合符合至少有两个点在同一条线上。思路就是把每个点遍历一下,然后用pair记录斜率,cnt表示每个点的和他重复的点的个数。最后 (2^cnt-1)*(2^(pair个数)-1) 把这些都加一起就是答案了AC代码:#include#include#inc

2016-07-22 12:32:29 345

原创 L2-005. 集合相似度(set)

这题主要是用到set的查询功能,直接暴力就好了AC代码:/* ***********************************************Author :yzkAcceptedCreated Time :2016/7/12 20:04:12TASK :ggfly.cppLANG :C++****************

2016-07-13 22:10:44 274

原创 L2-008. 最长对称子串(manacher算法)

今天学习了一下manacher算法,比较难理解的是这一步,mx表示的是当前的对称子串的最右端, id表示的这个子串的中间这个点。2*id-i 表示 i 关于 id 的对称点 jp[i]=mx>i?min(p[2*id-i],mx-i):1;AC代码:/* ***********************************************Author :yzk

2016-07-13 22:09:28 606

原创 PATL2-007. 家庭房产详解(并查集)

这道题其实就是并查集,只不过中途的过程稍微烦琐了一点。思路就是建一个结构体,ans1表示房子的数量,ans2表示面积,id表示编号,num表示人数。先把所有的编号在一起,找到这个编号最小的,把所有的ans1,ans2加到他这里。然后再找和她一起的人数,相除存在结构体b中,最后输出就好了AC代码:/* ***************************************

2016-07-13 22:01:55 3823 1

原创 690C2Brain Network (medium)

这题的题意就是给你一个树,每两个点之间的距离为1,然后问你其中两个点最长的距离为多少。DP数组表示这个点最长可以挂多少个点。mx表示当前节点除了他的父节点之外,可达到的最远的距离。AC代码:/* ***********************************************Author :yzkAcceptedCreated Time :2016

2016-07-11 21:54:37 456

原创 L2-011. 玩转二叉树

还是找到中序遍历的结点,进行建树,最后bfs输出就好和06差不多,细节注意下。AC代码:/* ***********************************************Author :yzkAcceptedCreated Time :2016/7/11 20:28:05TASK :ggfly.cppLANG :C++

2016-07-11 21:34:04 3208

原创 PATL2-006. 树的遍历

用的是递归的思想,找到每一层的根节点,然后进行建树。最后用个bfs将这个树输出AC代码:/* ***********************************************Author :yzkAcceptedCreated Time :2016/7/11 20:28:05TASK :ggfly.cppLANG :C++**

2016-07-11 21:11:06 3285 1

原创 PATL2-002. 链表去重(模拟)

这个我直接用用结构体模拟的这个链表。。搞清楚链表的结构就好了/* ***********************************************Author :yzkAcceptedCreated Time :2016/7/8 20:06:36TASK :ggfly.cppLANG :C++*****************

2016-07-10 19:17:54 981

原创 PATL1-006 连续因子

这道题复杂度够直接暴力就好了AC代码:/* ***********************************************Author :yzkAcceptedCreated Time :2016/7/10 15:00:29TASK :ggfly.cppLANG :C++*************************

2016-07-10 19:15:03 766

原创 UVA 11995 I Can Guess the Data Structure!

这题就是让你用 队列,栈,和优先队列分别实现给你的询问。我直接用的sql实现的,比较简单吧。AC代码:/* ***********************************************Author :yzkAcceptedCreated Time :2016/6/30 19:57:59TASK :ggfly.cppLANG

2016-07-01 00:03:15 211

原创 UVA 10859 Placing Lampposts(树状DP)

题意:给你一个n个点m条边的无向无环图,在尽量少的节点上放灯,使得所有边都被照亮。每盏灯将照亮以它为一个端点的所有边。在灯的总数最小的前提下,被两盏灯同时被照亮的边数应该尽量大。思路:这里比较重要的思路就是有两个所求的值要优化,比如让a尽量小,b也尽量小那么可以转化为让 M*a+b尽量小,其中M应该是一个比“a的最大值和b的最小值之差”还要大的数

2016-05-25 22:04:53 268

原创 UVA 11825 Hackers' Crackdown(状压DP)

这道题的题意就是有n个点,每个点都有邻居,问你依靠这些关系,一共可以组成几个完整的网络思路这道题因为数据最大才16,所以可以用状态压缩去做,0代表不经过,1代表经过。这样枚举肯定不会超时的,然后用cover数组记录的是每个状态的下一状态。然后状态转移方程就好写了,F(s)=max(F(s),F(S^S0)这个表示的是当前状态的剩余没用到的点+1)AC代码:/* **********

2016-05-25 21:49:54 262

原创 hdu5698百度之星瞬间移动(数论/卢卡斯定理)

这道题我拿道题是先写了个4维dp打表找规律 memset(dp,0,sizeof(dp)); int n,i,j; int l,m; dp[1][1]=1; for(i=2;i<=20;i++) { for(j=2;j<=20;j++) { for(l=1;l<i;l++) { for(m=1;m<j;m++) { dp[i][j]

2016-05-23 21:45:20 740

空空如也

空空如也

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

TA关注的人

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