自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

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

转载 TYVJ 1049 最长不下降子序列 by C++

入门DP,直接贴代码 1: #include<iostream> 2: #include<string.h> 3: using namespace std; 4: 5: int n,ans=0; 6: const in...

2012-07-10 21:34:00 171

转载 TYVJ 1039 忠诚2 by C++

1: #include<iostream> 2: #include<string.h> 3: #include<math.h> 4: using namespace std; 5: int m,n; 6: con...

2012-07-09 20:54:00 211

转载 TYVJ 1038 忠诚 by C++

用了老办法,没啥新意,只是自己写了个sort 1: #include<iostream> 2: #include<string.h> 3: using namespace std; 4: int m,n; 5: const int maxn=10...

2012-07-07 21:06:00 245

转载 TYVJ 1017 冗余关系 by C++

就机会复习一下并查集… 1: #include<iostream> 2: #include<string.h> 3: using namespace std; 4: const int maxn=1001; 5: int f[maxn];...

2012-07-07 20:42:00 189

转载 TYVJ 1016 装箱问题 by C++

用了个很笨的办法~ 同时学会了使用string.h里的memset 1: #include<iostream> 2: #include<string.h> 3: using namespace std; 4: const int maxv=2000000;...

2012-07-07 20:20:00 128

转载 TYVJ 1007 排座椅 by C++

1: #include<iostream> 2: using namespace std; 3: int m,n,k,l,d; 4: const int maxn=3000; 5: int hen[maxn]={0},shu[maxn]={0},posh[ma...

2012-07-05 14:03:00 170

转载 TYVJ 1079 数字三角形2 by C++

1 #include<iostream> 2 using namespace std; 3 const int maxn=30; 4 int n,px,py; 5 int a[maxn][maxn],f[maxn][maxn]; 6 7 void get_prepare() 8 { 9 cin >> n;10 ...

2012-07-04 20:05:00 175

转载 TYVJ 1006 isbn by C++

1 #include<iostream> 2 #include<string> 3 using namespace std; 4 string st; 5 int a[9]={0}; 6 int diag=0; 7 8 void get_prepare() 9 {10 cin >> st;11 ...

2012-07-04 19:31:00 98

转载 TYVJ 1005 采药 by C++

1 #include<iostream> 2 using namespace std; 3 const int maxn=100; 4 int t,n; 5 int c[maxn]={0},w[maxn]={0},f[maxn]={0}; 6 void get_input() 7 { 8 cin >> t >>...

2012-07-04 18:14:00 86

转载 TYVJ 1004 滑雪 by C++

1 #include<iostream> 2 using namespace std; 3 const int maxn=100,maxm=100; 4 const int dirx[4]={0,0,1,-1}; 5 const int diry[4]={1,-1,0,0}; 6 int n,m,maxx=0; 7 int a[maxn][max...

2012-07-04 17:41:00 120

转载 TYVJ 1001 第k极值 by C++

1 #include<iostream> 2 using namespace std; 3 const int maxn=10000; 4 int a[maxn]; 5 int n,k; 6 bool prime(int now) 7 { 8 if (now<2) return false; 9 if (now=...

2012-07-03 15:42:00 155

转载 TYVJ 1127 统计细胞数 by C++

1 #include<iostream> 2 using namespace std; 3 char a[100][100]; 4 int x[10000]; 5 int y[10000]; 6 bool vis[100][100]; 7 int n=0,m=0,tot=0,stx,sty; 8 void get_input() 9 {...

2012-07-02 22:10:00 130

转载 TYVJ 1010 笨小猴 by C++

1 #include<iostream> 2 #include<string> 3 using namespace std; 4 string monkey_name; 5 int a[150]={0}; 6 bool prime(int pre) 7 { 8 if (pre<2) return false; ...

2012-07-02 19:49:00 255

转载 TYVJ 1003 越野跑 by C++

为了迎合即将到来的大学专业生活,我开始华丽丽地由Pascal转C++了…写的不好,切忌吐槽 1 #include<iostream> 2 using namespace std; 3 int t,n,ut,ft,dt; 4 const int size = 100000; 5 int a[size]; 6 void get_input() ...

2012-07-02 16:34:00 397

转载 POJ3621-Sightseeing Cows

二分密度+bellman-ford判断是否存在负权回路。 a,b,e分别代表每条边的起点、终点、权值,mid为当前密度,cost为点的快乐值 在二分密度时,要注意更新边权为e[i]=e[i]*mid-cost[b[i]] [pascal 代码] VAR A,B,COST:ARRAY[1..100000]OF LONGINT; DIS,E,...

2011-10-31 11:35:00 129

转载 看到这个苹果就忍不住想吃一口

转载于:https://www.cnblogs.com/FreeDestiny/archive/2011/10/31/2229865.html

2011-10-31 10:26:00 65

转载 [二分答案] POJ2922 Honeymoon Hike

传说中的买一送一……不解释,详情看POJ2110 [pascal 代码] CONST DX:ARRAY[1..4]OF -1..1=(0,0,1,-1); DY:ARRAY[1..4]OF -1..1=(-1,1,0,0);TYPE LZY=RECORD X,Y:LONGINT; ...

2011-10-29 09:44:00 102

转载 [二分答案] POJ2110 Mountain Walking

题目大意: 给你一个n×n的矩阵,让你找一条从(1,1)到(n,n)的一条路径,保证路径上经过点的最大值与最小值之差最小,输出这个差值。 题目分析: 典型的二分答案,枚举上下界区间,然后二分差值,求差值的最小值。 [pascal 代码] CONST DX:ARRAY[1..4]OF -1..1=(0,0,1,-1); DY:ARRAY[1.....

2011-10-29 09:37:00 103

转载 [二分答案] Copying Books

上次做到那个收入计划的时候就提到了这道题目,在POJ上是让输出方案,并且保证前面的人赋值的书稿尽量多。所以不需要SJ。 具体实现就是先二分出正确的答案,然后根据答案从后往前进行贪心划分。 [pascal 代码] VAR A,WAY:ARRAY[0..100000]OF LONGINT; N,M,L,R,MID,I,J,TOT,T,IT:LONGI...

2011-10-29 08:53:00 155

转载 [二分答案]收入计划

高考结束后,同学们大都找到了一份临时工作,渴望挣得一些零用钱。从今天起,Matrix67将连续工作N天(1<=N<=100 000)。每一天末他可以领取当天及前面若干天里没有领取的工资,但他总共只有M(1<=M<=N)次领取工资的机会。Matrix67已经知道了在接下来的这N天里每一天他可以赚多少钱。为了避免自己滥用零花钱,他希望知道如何安排领取工资的时间才能使得...

2011-10-28 20:44:00 244

转载 TYVJ 1161 [聚会的名单]--Trie树

今天下午有位童鞋写这个题用暴力得了50分,感觉十分不爽,于是过来找Kudo求救……碰巧旁边的JAF DTing…… 于是他现学现卖,写了一个Trie树来解决~ [pascal 代码] TYPE LZY=RECORD GOT:LONGINT; NEXT:ARRAY['a'..'z'] OF LONG...

2011-10-28 19:10:00 102

转载 NOI2001 食物链

刚开始看这道题,总感觉可以对这些动物进行染色,令颜色相同的为一类。但是这样是有漏洞的。当你遇到一个没有染过色的动物,你需要给它染什么颜色呢?不能保证结果是正确的。 这道题目考查的数据结构是并查集。 用father[n],path[n]数组分别记录当前结点的祖先和到祖先的距离。 这里规定距离为0时为同类,为1时表示被祖先吃,为2时表示吃祖先。 初始时每个元素的祖先是自己...

2011-10-28 10:50:00 51

转载 八数码问题的两种解法

这个题可以用A*算法,这里不深究。主要讲解一下普通BFS+hash判重、双向BFS。1)普通BFS+hash判重普通BFS必须hash判重。如果不判重会出现TLE的杯具(亲历……)具体是这么实现的:每次枚举可以到达的状态,如果不是目标状态,并且没有入队,那么就加入队列,直到找到目标状态为止。在这里用的Cantor展开判重。[pascal 代码]Const ...

2011-10-27 16:12:00 228

转载 NOIp2002 T2 字串变换

题目要求最小变换次数,从搜索的角度讲,可以用BFS或者迭代加深。第一次写双向BFS,感觉还算标准的。判重的时候直接暴力O(tail)For循环了,不过依然很快~ Const maxn=10000; maxq=100000;Var a:array[0..1,0..maxn]of string; q:array[...

2011-10-27 15:34:00 94

转载 TYVJ 1268 [CoVH之柯南开锁]

废话不多说,这个题目为二分图最大匹配:把n行每一行看成一个点,共有n个点;把m列每一列看成一个点,共有m个点。当格子为灰色时,把这个格子所属的行的点与列的点连边,这样就构成一个二分图。 VAR cover:array[1..10000]of boolean; link,v:array[1..10000]of longint; map:array[1..10000,1....

2011-10-26 20:31:00 91

转载 POJ 1988 [Cube Stacking]

题目的大意是给你一些相同的立方体,共有1..N这些位置,开始每个位置上只含一个立方体,每个立方体标号1..N,然后让你执行p个操作,但只有两种操作:Move(移动)和 Count(计数)。 1)Move,输入格式M x y,意思为将当前位置为x的那些立方体堆叠到当前位置为y的那些立方体上面 2)Count,输入格式 C x,意思为查询当前标号为x的立方体下面堆叠了多少个立方体(不包含...

2011-10-26 17:06:00 56

转载 TYVJ 1520 [树的直径]

求树的最长链,用了SPFA+SLF(表示BFS就可以,作者纯属DT) [pascal 代码] Const maxn=100000; maxq=1000000;VAR a,b,e,dis,f:array[1..maxn]of longint; q:array[1..maxq]of longint; ...

2011-10-26 11:01:00 72

转载 NOIP2006T2 金明的预算方案

这道题可以用树形DP,也可以直接01背包,因为每个物品的附件不能再作为主件,所以选取每个物品就只有这几种可能的情况:不选这个物品、选取这个物品、选取这个物品及它的一个附件、选取这个物品及它的两个附件。很容易地想出来这是个背包问题。 用f[i,j]表示前i件物品用了j元钱获得的最大价值(即重要度与价值的成绩最大),那么状态转移方程是 f[i,j]=max{ f[i-1,j],//不选...

2011-10-26 08:09:00 76

转载 TYVJ P1061 [Mobile Service]

很早就写过这个题目,那时候看题解写的,说白了就是抄的程序…… 这几天又拿出来看,突然发现并没有想的那么难,大神勿喷…… 用f[i,j,k]表示在第i个时刻的要求中,第一个人在j位置,第二个人在k位置时的最小花费,因为第三个人一定是在上一个时刻要求的位置,所以可以去掉表示第三个人位置的那一维,用req[i]表示第i时刻要求的位置,则在第i时刻,第三个人是在req[i-1]位置上,初始化...

2011-10-25 08:16:00 135

转载 TYVJ P1042 [表达式计算3]

最近做的字符串处理问题比较多,所以这个题目直接用的字符串来处理,不需要高精,只需要注意细节。 [pascal 代码] VAR s,pre:string; cz:boolean; i:longint;Procedure init; begin readln(s); end;Function y...

2011-10-25 08:06:00 86

转载 TYVJ P1009 [立体图]

今天很闲,整理一下最近写的很有代表性的题目,拿出来晒晒,勿喷、勿喷呃…… 去年刚刚看到这个题目,愣是没有想出什么办法来,只感觉是个纯数学题,限于水平没有敢写。今年又翻出来看,结果想到了一个简单的办法(再次Orz dxh大神的纯数学方法…) 关于这道题目,里面的积木覆盖顺序一定是前面的挡住后面的,右边的挡住左边的,那么就可以用一个模拟放置积木的算法来画图。当然,放置的顺序是从后往前,从...

2011-10-25 08:04:00 103

转载 TYVJ P1046 [Blast]

第一次写这种字符串距离型DP,本来DP题目做得就少,权当练习。 这个题目要求字符串A、B扩展串的最短距离 用f[i,j]表示A到i位置,B到j位置的最短距离,则f[i,j]=min{f[i-1,j]+k,f[i,j-1]+k,f[i-1,j-1]+d} 其中d为A[i]与B[j]的ASCII码距离的差的绝对值,即d=abs(ord(a[i])-ord(b[j]))...

2011-10-25 07:53:00 83

转载 POJ 2585[Window Pains]

各种不解释,建图再拓扑判断是否可行 Var map:array[1..40,1..40,0..9]of longint; g,w:array[1..40,1..40]of longint; v,ind:array[-1..19]of longint; q:array[1..10000]of longint; ...

2011-10-14 19:11:00 82

转载 图论算法之最小生成树(MST)题目汇总

POJ1861 & ZOJ1542[Network] ZOJ 1203[Swordfish] POJ 1251[Jungle Roads] POJ2031 & ZOJ1718[Building a Space Station] POJ 2421[Constructing Roads] POJ 2349[Arctic Network] POJ 1789[Truc...

2011-10-14 17:44:00 188

转载 POJ1861 & ZOJ1542[Network]

这个题的样例让我大呼坑爹——竟然把Special Judge上的各种情况融合在了一个样例上……再次Orz 这个题就是个MST,但是题目要求是生成树中的最长边最小,所以要用Kruskal,因为Kruskal的算法保证了最小生成树中的最长边最小。 Var a,b,e,f,optx,opty:array[-1..15100]of longint; n,m...

2011-10-14 17:43:00 78

转载 POJ 1251[Jungle Roads]

还是个MST,不过这个读入数据让用Pascal的童鞋很郁闷的说…… Var a,b,e,f:array[1..100000]of longint; n,m,sum,ans:longint;Procedure addgraph(ch1,ch2:char;cost:longint); begin inc(m); ...

2011-10-14 17:42:00 51

转载 ZOJ 1203[Swordfish]

开始在各大OJ刷水题。这是一个MST,只是输入数据的时候需要重新构图,其他没什么 p.s. Var a,b,f:array[-1..100000]of longint; e,xx,yy:array[-1..100000]of extended; n,m,cases:longint; sum:extended;...

2011-10-14 17:42:00 93

转载 POJ2031 & ZOJ1718[Building a Space Station]

MST,不过这个题用Prim可能会快点,表示我写的Kruskal。 两点之间的距离如果比两点半径和小那么建图时把两点距离置为0,这样就保证了重叠和相交的情况。 Var a,b,f:array[1..11000]of longint; e,x,y,z,r:array[1..10000]of extended; n,ans,m:lon...

2011-10-14 17:41:00 89

转载 POJ 2421[Constructing Roads]

不解释的MST,把已经有道路的两个村庄之间建一条长度为0的边,然后Kruskal。我开始是把已经有路的村庄合并,WA了 p.s.这个题的Discuss里面楼要倒了…… Var a,b,e,f:array[1..100000]of longint; n,m,sum,ans:longint;Procedure addgraph(x,y,z:long...

2011-10-14 17:40:00 57

转载 POJ 2349[Arctic Network]

这个题Prim是比较快的,用Kruskal要700+ms,幸亏时限是2000ms…… 这个题就是建图之后求最小生成树中第p-s小的那条边,用kruskal比较容易理解~ Var a,b,f,x,y:array[1..1000000]of longint; e:array[1..1000000]of extended; n,m,an...

2011-10-14 17:36:00 87

空空如也

空空如也

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

TA关注的人

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