自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

天空の行者

Skyprophet@YCOI

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

原创 [URAL 1100]Final Standings(排序技巧)

【题目描述】:给你n(1冒泡排序的顺序输出。【题目分析】:这个题的关键在于他要你按照冒泡排序的顺序输出。我们知道任意一个nlogn的排序算法都无法保证原数中的两个数相对位置不变。所以,就不能依靠快速排序等更快的排序算法来进行运算。其实这个题的题眼在这:(0这让我们不得不想到桶排序。我们把这100种可能的情况记做一个个桶,然后我们来检验,进行桶排序。其实我们根本就可以按照降序来进

2009-08-29 18:08:00 762

原创 [POI][Ruvtex 31]潜水员问题(动态规划)

【题目描述】:http://www.ruvtex.cn/cogs/problem/pdetail.php?pid=31P.s.个人比较喜欢Byvoid神牛的这个Oj。字很大,而且清楚。使用文件,界面简洁~~ 【题目分析】:最开始果然被唬住了。实际上就是有两个约束条件的背包。可能情况有一点不一样的就是,他判断的不是一个点,而是大于一个点的一个范围。跟背包一样,就是更新

2009-08-17 17:21:00 955

原创 [NOI 2007]社交网络(Floyd)

题目见:http://www.ruvtex.cn/cogs/problem/pdetail.php?pid=15 这个题让我对floyd有了一个更好的认识。 floyd实际上是一个动态规划的过程。对于这个利用松弛进行的动态规划,我们能从中得到很多其他的信息。首先,如果说一个两个点之间的松弛点式确定的,那么我们就可以确定两点间的一条最短路径。还可以进行floyd找最小环的工作。

2009-08-14 16:57:00 830

原创 [NOI 1999]棋盘分割(动态规划)

题目就自己看就行了。NOI 1999 day2第一题。没想到day2的题目也可以这么水。这个题就是一个动态规划,运用记忆化搜索。dp[x1,y1,x2,y2,k]表示将x1,y1,x2,y2为左上和右下角的矩形分成K份,其中方差没除N的部分的最小值是多少。方程应该很好想。【代码】program chess;var sum,a:array[0..8,0..8] of l

2009-08-14 10:07:00 793

原创 状压DP学习笔记(二)

下面的一个很常用的模型就是覆盖的模型。说白了就是一个东西,让你用几种东西覆盖,不允许重叠。问你覆盖满的情况有多少种。这种状压DP就是按照比较长的那个方向划阶段。然后将一行的状态压缩。对于两行之间的转移只有在两行可以互相转化的情况下才可以进行。所以就需要DFS。这个DFS是重点,其核心就是找可以放的空档,然后把他们放进可以放的所有的东西。注意前后的影响和几行之间的相互影响就可以了。具

2009-08-05 16:48:00 705

原创 [SGU 131]Hardwood floor(状压DP)

[题目大意]问m*n的地板,用1*2的矩形和L形(2*2去掉一个角)覆盖满,一共有多少种方案?[分析]这个题和PKU 2411很象。只是多了一个L形。所以只是DFS不一样。这个DFS不是很好写。正确的方法应该是记录上一列的决策对这一列的影响。如果下一行还可以放,那么就是1,否则就是0。P.S.最近特别喜欢在Ubuntu下写代码,特别爽~[代码(1A)]program

2009-08-05 08:40:00 1387

原创 [PKU 2411]Mondriaan's Dream(状压DP)

[题目大意]有一个m*n的正方形网格,让你用1*2的骨牌覆盖满这个网格,并且不允许重叠,求方案个数。[题目分析]再经典不过的一道状压DP覆盖模型的题目了。这个题很容易想出这样一个方程:f[i,j]表示前i-1行盖满,第i行使用j这种状态的方案个数。F[I,J]:=Sum{F[I-1,K]} (K状态能导出J状态)现在最麻烦的地方变成了,如何确定一个状态I可以由哪几个状态推出

2009-08-04 16:13:00 800

原创 [SGU 223]Little Kings(状压DP)

调了两天,发现是个极其2B的错误…………[题目大意]在N*N的棋盘上放K(这个万恶的K)个王,是他们相互之间不攻击,问有多少种方法。[题目分析]这个就是一个很经典的状压DP棋盘模型。就是说,我们想让他们不相互攻击,我们可以先用DFS求出保证在一行的情况下不相互攻击的情况,记录在一个数组里,用一个数来表示,他的二进制就表示了一个状态。然后f[i,j,k]的含义就是前i行放了K个棋

2009-08-04 15:21:00 959

原创 状压DP学习笔记(一)

首先,什么是状压。所谓状压,就是状态压缩。就是将原来需要很多东西来储存的状态存在一个很小的空间内,并且并不影响动态规划的决策和转移。最简单的例子就是可以将一个地方是否有东西表示成二进制位中的一位。很多东西都可以用状态的压缩,有时不仅仅是DP。举个最简单的例子,USACOchecker这道题,就有一种方法就是用二进制位来确定无法放置的位置,实际

2009-08-03 16:42:00 844

原创 [SGU 286]Ancient decoration(二分图匹配)

从今天开始,我要在这里开始写王正宇大牛每天给我留的题的解题报告。[题目描述]说有一个很奇怪的国家,这个国家修路,然后这个路是双行线,然后最NB的地方在于每个点的度都是一个偶数K,说现在这个国家要搞节日活动,要decorate一些路。要decorate的这些路有这样一个特点,就是这些路所构成的子图必须包含原图所有点,并且每个点的度都为2。[题目分析]最开始我想了一个方法,但是发现我二

2009-08-01 20:35:00 1267

空空如也

空空如也

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

TA关注的人

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