自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(59)
  • 资源 (1)
  • 收藏
  • 关注

原创 BACI并发程序设计

           BACI并发程序设计                                                                                      (操作系统课程实验,花时间研究了下)BACI为我们提供了提供了一个可以编写并发程序的环境,在这个平台上,我们可以很容易的模拟程序的并发执行,在这种并行的编译环境中,可以把BACI

2010-05-08 12:01:00 2744 2

转载 算法导论第 3 版---多线程算法(转)

                                           多线程算法                                                    ——算法导论第 3 版新增第 27 章                           Thomas H. Cormen, Charles E. Leiserson, Ronald L.

2010-03-07 23:29:00 521

原创 暑期集训第二周总结

本周PKU刷题录:PKU 1101  The Game  简单的Bfs,代码写得很撮,自己都不想看了,要注意如何扩展,每次一定要把相同步数的点入队。PKU  2240   Arbitrage  简单的floydPKU  2421   Constructing Roads  最小生成树,但题目中给定最小生成树中要有给定的边,可以把这些边权值设为0,然后Prim即可PKU  2215  Parliam

2009-08-10 01:31:00 390

原创 PKU 水过100了,发帖纪念一下

在POJ做题半年多,终于水过100了,实在不好意思说出来啊。。      1000 1003 1004 1005 1006 1008 1013 1016 1019 1020 1032 1042 1045 1046 1050 1051 1065 1068 1094 1101 1119 1125 1131 1142 1146 1163 1164 1182 1195 1207 1218 1247

2009-08-07 01:40:00 327

原创 PKU 1731.1256.1146 (next_permutation 全排序)

  今天看到一个帖子,才知道STL中next_permutation,prev_permutation可以实现字符的全排序问题,STL有不少好东西啊…,顺便把几道相应的题给切了。  PKU  1731#include "iostream"#include "algorithm"#include "string"using namespace std;int n,flag;cha

2009-08-07 01:28:00 273

原创 PKU 1703 Find them, Catch them( 并查集的应用)

http://162.105.81.212/JudgeOnline/problem?id=1703题意是有两个集合每次输入D a b 表示a跟b不在一个集合,输入A a b 询问a和b是否在一个集合。以前做过这样的题目(PKU 2492),做法是用一个数组opt[t]存放t的对立,这样每次可以Union(a,opt[b]),Union(b,opt[a]),这样每次可以把相同的类合并。     

2009-08-07 00:25:00 751

原创 暑期集训第一周总结

第一周集训总结:集训开始一周了,还没怎么安下心来做题,理论课基本没去上,做了一些水题,练练基本功……;周末做HOJ上的个人赛.尽量去现场感受了~      第一场个人赛有4,5道水题,做了其中的四道,还是基本功不扎实,首先敲题速度慢,一次很难实现,还要多次调试,其次是准确率不高,总是有什么小错误,提交几次后才AC。这也影响了看后面的题。比赛结束时刚好做了四道,其他题都没来得及看。     第二

2009-08-02 23:11:00 257

原创 暑期集训开始了

本人第一次暑期集训开始了,努力刷题,争取提高,给自己加油!  好久没做题了,发现手生了,今天做了几道水题热热身……         PKU.1019 --Number Sequence   这个题的思想方法很好,逐步求精逼近结果,先确定在那一轮,在确定哪个数,再确定该数中的第几位,其中用(int)log(10)+1求位数.        PKU 1069  Parencodin

2009-07-29 22:45:00 235

原创 PKU 1195 Mobile phones(二维树状数组)

二维树状数组的简单操作:Memory: 8736K  Time: 1141MS Language: G++  Result: Accepted Source Code #include "stdio.h"#include "string.h"long long C[1030][1030];int n;int lowbit(int x){      return  x&(x^(x-1))

2009-06-06 00:34:00 352

原创 PKU 3321 Apple Tree(树状数组)

      一道很好的树状数组题目,题目的意思是给一树,刚开始每个节点有一个果子,有多次操作,每次操作若该点处有果子,则把果子摘了,否则该节点处添一个果子。每次询问以该节点为根的子树的果子数。题目的关键在于如何转化才能用树状数来解,比如我们要统计以i为根的子树的果数,能不能与树状数组中的Sum值联系起来呢?其实这样是可以的,如果重新编号,把该子树的节点的排在其左边,且知道最左边的节点的编号C1,该

2009-06-05 23:33:00 602

原创 PKU 2352 Stars(树状数组)

题意是在一个二维数组中统计星星个数,刚开始想到用二维树状数组可以很容易的解决,但这样内存是不允许的,题目的关键是给定的星星的已经按y坐标排序了且y相同的时候,再按x排序,所以利用这一点,可以仍容易的用一维树状数组解决。每次按顺序把y映射到x上即可。Memory: 608K  Time: 391MS Language: G++  Result: Accepted Source Code

2009-06-05 23:19:00 669

原创 KMP算法学习体会

KMP算法学习体会 这个算法数据结构课上老师讲过,当时大致听懂了,一直没写过,今天抽个时间复习了一下。以下是一点体会。      给定两串S,T,判断串T是否与S中的一个字串匹配,S为主串,T为模式串.KMP算法可以在O(m+n)时间内实现串的匹配,其中m,n分别为两串的长度。        判断两个串是否配,就是把主串与模式串中的字符一一比较,若当前的字符匹配则在比后面的。关键是当前不匹

2009-05-31 21:59:00 621

原创 ZOJ 3199 Longest Repeated Substring (后缀数组)

      题目:求出字符串的不重叠的最长重复子串的长度。     这道题目可以说是后缀数组的简单应用,当然也可以用KMP来解。很容易想到直接求从i=0开始求最大的Height值,满足suff[i-1]+Height[i]=suff[i]或suff[i]+Height[i]=suff[i-1]即可,而且这样提交也AC了,数据实在太弱了,其实这样是错的,在网上找了这组数据“defgdefgzde

2009-05-31 20:57:00 736

转载 Range Minimum Query and Lowest Common Ancestor 收藏

【原文见  http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=lowestCommonAncestor】                                                                                        作者:      By danielp 

2009-05-30 10:29:00 514

原创 PKU 2274 Long Long Message( 后缀数组的应用)

     最长公共字串,给定两个串,其最长公共字串,后缀数组的简单应用。字符串的任意一个字串都是这个字符串的某个后缀的前缀。求A和B的最长公共字串定价于求A的后缀和B的后缀的最长公共前缀的最大值,所以可以将两个串连起来,中间用一个没出现过的字符隔开。这样就转换成了求最长可重叠重复字串的问题了,它就等于最大的Height值,因为任意两个后缀的最长公共前缀都是height数组中某一段中的最小值,那么这

2009-05-30 01:14:00 648

原创 后缀数组学习笔记(一)

    研究了一个星期的后缀数组,过程很痛苦,但还是有很多收获,付出更收获真的成正比的。发现后缀数组的强大功能,需慢慢领会。后缀数组可以代替后缀树巧妙的解决大多数字符串问题,其强大功能主要有三个数组:   1.suff[i],存放字符串S生成的后缀数组中排在第i位置,也就是将的n个后缀从小到大排序后把排好序的后缀的开头位置顺次放入到suff中。    2.rank[i],rank数组跟suff

2009-05-29 23:56:00 956

原创 PKU 2362 Square(dfs+剪枝)

题目的意思很清楚,给一些边的边长,判断能不能构成一个正方形。直接dfs过不了,要加一点剪枝才可以。1.所有边长的和应该是4的倍数,否则不肯能构成正方形,这一点很容易想到。2.必须按一定顺序搜索,不然会有很多重复,比如你从前面搜的时候,后面的有些不满足条件,那么搜后面时候就没必要再去搜前面的这些,这一点很重要,我是按边长递减的顺序搜的,这样就可以避免很多重复搜,还有搜到之后就不用回溯,这一点让我TL

2009-05-22 20:58:00 756

原创 PKU 1753 Flip Game(Bfs+ 位压缩状态)

        一个不错的Bfs,它的价值在于状态的保存,做这道题就是为了学习如何用位存储状态。虽然看了网上的思路,也算入了门吧!       题目的意思:   给定一个4*4格的棋盘,每一个格子是黑的或者白的,现在有一个规则:每当把一个格子变成它相反的颜色,那么相邻的格子(上下左右)的颜色也将变成它与原来相反的颜色。那么,给出一种算法,对于一个给定的棋盘,把它的格子全部变成白色或黑色。 

2009-05-12 23:49:00 1695 2

原创 PKU 1020 Anniversary Cake(Dfs)

一道简单的搜索题,我却做了两天,真是失败,从刚开始,没有思路,到想到方法,再到如何实现,从N次wrong后,到TLE,再剪枝优化,最后Accept,可谓一路辛苦,其中也多亏大牛的提示。        题意是把一个大蛋糕(边长为E),能否切成给定s(s     1.保存状态很重要,这是遇到的第一个问题,想法是用一个矩形来存储,用一个表示列的数组d[i](这个刚开始没想到),d[i]表示第i列没填蛋糕

2009-05-10 20:06:00 876 2

原创 带负权的单源最短路径

     昨天比赛的时候碰到了带负权的单源最短路径的题目,没做出来,Dijkstra不可以求带负权的最短路。学习了一下Bellman-ford算法。 Bellman-ford算法可以在O(VE) 的时间内求出带负权的单源最短路(除存在负权回路),而且可以判断图中是否存在负权回路。我觉的Bellman-ford算法的关键点在于在一个|v |个点的图中,任意两个点之间的最短路之间最多有|v

2009-05-03 18:02:00 1482

转载 深入浅出素数算法

 注意: 如果没有特殊说明, 以下讨论的都是针对n为素数时的时间复杂度1. 根据概念判断:     如果一个正整数只有两个因子, 1和p,则称p为素数.bool isPrime(int n){      if(n       for(int i = 2; i           if(n%i == 0) return false;      return true;}时间复杂度O(n).2. 改进

2009-04-28 16:52:00 1593

原创 归并排序及逆序对算法

排序都用Qsort了,别的排序算法不怎么用,但有些排序的思想很重要。碰到一道求逆序对的题,要用到归并排序,学习了一下归并排序。归并排序是用分治思想,分治模式在每一层递归上有三个步骤:                               分解:将n个元素分成个含n/2个元素的子序列。                               解决:用合并排序法对两个子序列递归的

2009-04-24 19:04:00 1977

转载 [汇总]字符串题目推荐及解题报告

[汇总]字符串题目推荐及解题报告2008-06-28 14:31说明:小弟才疏学浅,最近发现此文点击率较高,还有一些转载,实在是万分惭愧。这份题目推荐里面,实在水题烂题太多,上不得台面,等今年赛区赛结束后,本菜一定好好清理下此贴。POJ 1002 - 487-3279(基础)http://acm.pku.edu.cn/JudgeOnline/problem?id=1

2009-04-18 23:51:00 858 1

转载 汇总]搜索题目推荐及解题报告

[汇总]搜索题目推荐及解题报告(8.28更新)2008-06-28 14:31以前的帖子要么太分散,要么太凌乱,故现在开始,对每一个分类做一个长期更新的汇总贴。格式说明:题目名后面列出个人此题的大致难度(对菜鸟而言)POJ 1069 -The Bermuda Triangle(难)http://acm.pku.edu.cn/JudgeOnline/problem

2009-04-18 23:49:00 1414

转载 一些图论、网络流入门题总结、汇总

一些图论、网络流入门题总结、汇总2008-09-03 11:43最短路问题此类问题类型不多,变形较少POJ 2449 Remmarguts Date(中等)http://acm.pku.edu.cn/JudgeOnline/problem?id=2449题意:经典问题:K短路解法:dijkstra+A*(rec),方法很多相关:http://acm.pku.e

2009-04-18 23:46:00 4453 1

转载 stl几个(set map vector string)用法

string使用总结1.初始化string s0;string s1("hello");string s2(5, a);         //s2 = aaaaa;string s3(s1);                 // s3 = hellochar str[100] = "aaaaabbbbbaaaaaaaaaaaaaaaaa";string s4(st

2009-04-18 23:24:00 1141

原创 PKU 1182 食物链(并查集的应用)

Source CodeProblem: 1182 User: zhouxc Memory: 980K Time: 422MS Language: G++ Result: Accepted Source Code #include "iostream"using namespace std;int n,m,x,y,c,test,dist;int p[

2009-04-18 14:37:00 633

原创 HOJ Fire Dijkstra的简单扩展

User: zhouxc , Problem : 11391 Language : GNU C++ , Judge Result: Accepted Source Code #include "iostream"#define M 10000000using namespace std;typedef struct TableEntry{

2009-04-17 23:38:00 242

原创 PKU . 2492 A Bug's Life(并查集的应用)

Source CodeProblem: 2492 User: zhouxc Memory: 416K Time: 1266MS Language: G++ Result: Accepted Source Code #include "iostream"using namespace std;int n,m,x,y,test;int p[20

2009-04-11 13:56:00 597

原创 ZOJ 1292 大数的加法

#include "iostream"#define M 105using namespace std;typedef struct Hp{ int len; int s[M+1];};Hp A,B,C;char ch[105];int n;

2009-04-09 16:12:00 289

原创 ZOJ 1655 (Dijkstra)

#include "iostream"#define M 100000000using namespace std;typedef struct TableEntry{ double Dist; bool Known;}; TableEntry Table[101]

2009-04-05 18:13:00 373

原创 PKU 1273 最大流

Source CodeProblem: 1273 User: zhouxc Memory: 552K Time: 0MS Language: G++ Result: Accepted Source Code #include "iostream"#include "queue"using namespace std;int m,n,a,b,c,

2009-04-04 09:30:00 818 1

原创 PKU 2503 查找

Source CodeProblem: 2503 User: zhouxc Memory: 4316K Time: 344MS Language: G++ Result: Accepted Source Code #include "iostream"#define N 100002usin

2009-04-01 22:54:00 217

原创 HOJ 3月赛 The word appears number of times

#include "iostream"using namespace std;typedef struct BitNode{ char str[20]; int cunt; struct BitN

2009-03-29 19:22:00 189

原创 一些简单二叉查找树的操作

#include "iostream"#include "stdlib.h"#define N 10using namespace std;typedef struct BitNode{                      char                     data;              struct BitNode          *Left;         

2009-03-29 19:19:00 192

原创 ZOJ 2081Mission Impossible ( Bfs+Dfs)总结

#include "iostream"#include "queue"using namespace std;typedef struct Pos{ int x; int y; int step;};Pos start,temp,t,rout[100];

2009-03-28 19:03:00 275

原创 ZOJ 1649——Bfs总结

#include "iostream"#include "queue"#define M 1000000using namespace std;typedef struct{ int x; int y; int step;}Position;

2009-03-21 09:57:00 399

原创 HDOJ 2680 总结

Problem : 2680 ( Choose the best route ) Judge Status : AcceptedRunId : 1154926 Language : G++ Author : zhouxcCode Render Status : Rendered By HDOJ G++ Code Rander Version 0.01 Beta#in

2009-03-19 18:37:00 226

原创 ZOJ 1002 总结

#include "iostream"using namespace std;string map[5];int n,maxinum;int Putcan(int col,int row){ for(int i=row-1;i>=0;i--) { if(map[col

2009-03-14 21:12:00 270

原创 ZOJ 3172 Extend 7-day Vacation

#include "iostream"#include "vector"using namespace std;typedef struct{ vector v;}Node;Node List[1000];int a,b,m,n,max_country,country;bool visit[1000];void Df

2009-03-07 19:47:00 311

c语言100例acm试题

c语言100例acm试题 高级程序设计技术

2008-08-31

空空如也

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

TA关注的人

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