自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 HDU--1284

一维数组实现:

2014-10-31 21:45:57 352

原创 最长上升子序列

求最长上升的子序列 1.找子问题“求以ak(k=1, 2, 3…N)为终点的最长上升子序列的长度” 一个上升子序列中最右边的那个数,称为该子序列的 “终点”。 虽然这个子问题和原问题形式上并不完全一样,但 是只要这N个子问题都解决了,那么这N个子问题的解中, 最大的那个就是整个问题的解。 41 2. 确定状态: 子问题只和一个变量-- 数字的位置相关。因此序列中数 的位置k 就

2014-10-30 01:11:08 392

原创 poj 1182 食物链

给出K句话来描述N个动物(各属于A、B、C三类之一)之间的关系,K句话中有真话有假话,当一句话满足下列三条之一时,这句话就是假话,否则就是真话。1)当前的话与前面的某些真的话冲突,就是假话;2)当前的话中X或Y比N大,就是假话;3)当前的话表示X吃X,就是假话。 求假话的总数。 注意:这道题是单组数据输入...... 一.输入三个数 : 关系d 动物1:x 动物2:y   x与y的关

2014-10-28 07:01:28 295

原创 poj 1988--E - Cube Stacking

#include const int Max=30010; int cube[Max]; int sum[Max]; int under[Max]; int find(int a){ if(cube[a]==a) return a; int t=find(cube[a]); under[a]+=under[cube[a]]; cube[a]=t;

2014-10-26 13:38:20 434

原创 HDU 1213--A - How Many Tables

#include const int Max=1000; int r[Max+10]; int find(int a){ if(r[a]==-1) return a; return r[a]=find(r[a]); } void Merge(int a,int b){ int fa=find(a); int fb=find(b); if(fa

2014-10-26 08:55:45 357

原创 poj 1611 __ The Suspects(第一天)

#include const int Max=30000; int sa[Max+10]; int total[Max+10]; int find(int a){ if(sa[a]!=a) sa[a]=find(sa[a]); return sa[a]; } void Merge(int a,int b){ int fa=find(a); int f

2014-10-26 01:51:40 413

原创 HDU__A - How Many Tables(第一天)

#include const int Max=1000; int tab[Max+10]; int total[Max+10]; int find(int a){     if(tab[a]!=a)         tab[a]=find(tab[a]);     return tab[a]; } void Merge(int a,int b){     int fx=find

2014-10-25 19:48:07 351

空空如也

空空如也

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

TA关注的人

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