自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 过早退出是一切失败的根源

<br /><br />1. 设计你自己的进度条<br />进度条的设计是一个很多人都知道的故事:同样的耗时,如果不给任何进度提示,只是在完成之后才弹出一个完成消息,中间没有任何动态变化,那么整个过 程就会让人等得非常焦急,导致一些人干脆把程序关了了事。如果有进度不断更新,那么对整个过程耗时的心理感受就会远低于实际值,用户也不会郁闷到把程序关 了。(你有多少次在银行处理手续的时候,看着工作人员把一堆材料不停地倒腾来去,心里多希望他们可以在柜台小窗口上投影一个进度条?)<br />这里的原因在于,没有进度提示

2011-05-13 20:45:00 615

原创 简单工厂模式

今天学了点设计模式,虽然只是最基本的,或许根本算不上设计模式,但想想还是记下来,梳理一下,以后回头也可以看看。看的是《大话设计模式》这本书,所以代码也基本跟书中一样。首先,让我们写个简单的计算器,对两个数字进行运算。如果是以前面向过程的思维,那么我会在main函数中直接用if-else语句判断符号,然后进行计算出结果。后来如果用面向对象的思维,那么我会写一个运算类,然后用switch语句,把加减乘除都封装起来,在main函数中调用。如今,让我们结合封装,继承,多态,用一下简单工厂模式其实,为了降低程序的耦合

2011-02-25 19:01:00 341

转载 Myeclipse 8.5 的优化

<br />1 、关闭MyEclipse的自动validation <br />      windows > perferences > myeclipse > validation <br />      将Build下全部勾取消 <br />      如果你需要验证某个文件的时候,我们可以单独去验证它。方法是: <br />      在需要验证的文件上( 右键 -> MyEclipse -> Run   Validation <br />2、 启动优化,关闭不需要使用的模块 <br />     

2011-01-11 19:30:00 880

原创 hdu1257 最少拦截系统 hdu1677 Nested Dolls(最长上升子序列)

/*我一直陷入了出题者的思维,总是觉得这不是普通的LIS,而是要求最少有几个LIS。现在回过头来看看,发现自己错了,确实就是最普通的LIS,只是我刚开始一直没有转过弯来。可以这样理解这个LIS:这个序列中的任何两个导弹都不能共用一个拦截系统,而且其余的导弹都能和这个最长序列中的某个导弹分为同一组。*/#include#include#include#includeusing namespace std;bool run(){ int n;

2010-12-26 19:14:00 979

原创 hdu2680 Choose the best route (dijkstra)

<br />//题意是很明显的最短路径(注意是有向图),但是用floyd会超时,用dijkstra//这里有个小技巧,就是用逆向思维,将终点视为起点,这样只要用一次dijkstra//然后找出最小值就可以了,当然保存路劲的时候也要逆向。#include<iostream>using namespace std;const int Max=INT_MAX/2;const int N=1001;int mat[N][N];bool visited[N];int dist[

2010-11-12 19:22:00 669

原创 hdu2512 一卡通大冒险(DP)

<br />//hdu2512 一卡通大冒险/*第二类Stirling数是把包含n个元素的集合划分为正好k个非空子集的方法的数目。递推公式为:S(n,k) = 0(n<k||k=0),S(n,n) = S(n,1) = 1,S(n,k) = S(n-1,k-1) + kS(n-1,k).昨天晚上刚看了下算法分析与设计,觉得这个也可以用备忘录方法的DP做吧,就做了一下,这里做的有点烦。只要知道斯特灵公式,就可以了,又是数学,泪奔~*/#include<iostream>

2010-10-15 18:21:00 746

原创 pku1088 滑雪(记忆化搜索)

<br />//pku1088 滑雪(记忆化搜索)/*首先题目的意思不能弄错。问的是:每个点都有一个高度,而你滑雪肯定从高到底滑,让你选择一个点,使得以这个点为起点的路径最长。方法:记忆化搜索单纯的搜索肯定耗时,所以就要将已经计算出来的值保存下来,下次如果要用调用一下计可以了。*/#include<iostream>#include<cstdlib>#include<cstdio>#include<cmath>#include<algorithm>#inc

2010-10-14 19:17:00 504

原创 今天失败,其实一直都很失败

<br />      今天的比赛,让我再次意识到,什么叫差距。<br />看见有人在QQ上说了一句:做完今天的比赛,我发现自己连菜鸟都不算。<br />说的好对,我也这么觉得。<br /> <br />      每次想证明一下自己,却总是被无情的打击。<br />我现在觉得,自己要重新开始,虽然知道已经晚了,但还是想争取一下。<br />从大一省赛,大二市赛,到今天。我总是把希望寄托在队友身上,而把自己的责任用种种原因推卸掉,呵呵,其实,我一点实力都没有,但很会装B。<br />      <br />

2010-10-10 18:51:00 457

原创 Eclipse 插件的安装

最近需要在Eclipse上做点东西,必须安装一些插件,就查了查,发现还有点讲究,有三种方法。1.下载插件压缩包,直接解压压缩包,将解压的这个文件放到Eclipse->plugins文件当中。这种方法有时候会不行,我也不知道为什么。2.我用的是在线下载这个方法,因为简单方便,但是可能后期插件多了对插件的管理不太好,而且你的插件必须由在线下载地址,比如SVN,Tomcat等等。打开Eclipse(我用的是Eclipse3.5版本,有些版本对一些插件可能是不兼容的)选择Help->Install New Soft

2010-09-27 20:47:00 391

原创 暑假10天

<br />不知不觉十天就这么过去了,在学校里跟着学长学姐们学习,其实也挺不错的,至少比在家里好。<br /> <br />慢慢地,从一窍不通,到现在渐渐熟悉WinForm,现在在做一个MIS,虽然不是什么好东西,但至少是我这几天的成果,我真的很喜欢这种感觉。今天,学长跟我讲对象数据库,那叫一个晕,本来基础就不扎实,一会又讲这么高深的东西。。不过,我倒是从他那里学到了很多东西。比如他们学习的方法以及态度,真的是很值得让我学习。其实我对编程太过看重表面功夫了,一直想仔细地把所有的概念以及语法都摸透,才觉得学号

2010-08-11 00:08:00 363

原创 工厂方法模式(Factory Method)

工厂方法模式(Factory Method)

2010-08-01 14:13:00 416

原创 hdu1509 Windows Message Queue(优先队列)

第一次用优先队列,优先队列和普通队列不同的是,它的出队顺序是按一定的优先级来排序的

2010-07-29 20:16:00 945

转载 MySQL5.1安装配置图解

MySQL5.1安装配置图解

2010-07-19 16:21:00 697

原创 zju2346 Shortest Prefixes(字典树 trie)

总算自己做出一道字典树,内牛满面~

2010-07-16 15:58:00 465

原创 hdu1800 Flying to the Mars(map)

题目的本意是找出最长平台。简单的说,就是找出现次数最多的数字。

2010-07-12 00:40:00 877 1

转载 sql server数据库定时自动备份

sql server数据库定时自动备份

2010-06-24 09:33:00 382

原创 nuaa1561 Oliver的恋爱 (最长上升子序列O(nlogn))

当时比赛的时候用O(n^2)一直超时,于是学习一下这个O(nlog(n))算法

2010-06-23 17:49:00 581

原创 nuaa1330 最大间隙问题

以前在nuaa一直做不出来,后来才知道是一个很妙的算法。

2010-06-23 17:45:00 498

原创 HDU1301 Jungle Roads(最小生成树prim)

把以前博客里的东西搬了过来,我用的最小生成树prim算法模板

2010-06-23 17:41:00 479

原创 hdu1587 Flowers

反应就是水题,贪心。老师说,用完全背包。确实,一题多解嘛,是我们应该有的态度。这里就只有一个V[]保存价值,然后F[]保存最大个数就可以了,一个小小的变换。还有一个就是提供的money没有范围,就又可以练习一下vector了 #include#include#includeusing namespace std;int n,V;int max(int a

2010-05-15 15:54:00 531

原创 hdu3332 Windows

刚开始以为是个水题,跟以前一到省赛题很像。但发现第二个样例好像对不上。。。关键在于pixels(像素)这个单词上,以前的题目是一点一点的算,这道题是按一格一格来划分区域的,这样理解就可以对上了。 #includeusing namespace std;int cnt=1;struct jsj{ int x1,y1; int x2,y2;}

2010-05-15 15:45:00 525

原创 vs 出现绑定句柄无效 的错误

在运行里输入services.msc 将里面的Terminal Services 设置为启动。

2010-03-28 23:33:00 688 1

原创 hdu1022 Train Problem I(STL 栈的应用)

#include#include#includeusing namespace std;int main(){    int n;    while(cin>>n)    {        stack mystack;        int i,j,t,k;        char a[11],b[11];        string s[1000];        for(i=0;i>a[i];

2010-03-24 22:47:00 423

原创 hdu2544 最短路(dijkstra)

#include#include#includeusing namespace std;const int Max=INT_MAX/2;const int N=101;bool visited[N];int mat[N][N];int dist[N];int n,m;int Minval(int n){ int next=-

2010-03-23 23:10:00 461

原创 zju1717 The Secret Number(DP)

标准的DP吧。我的思路:因为必须用字符类型存储,所以我想到了用string解决,因为string比较数字的大小只要先比较长度,长度相等的话,直接比较就可以了。mat[i][j]存储矩阵本身。num[i][j]表示到达第i行,第j列所能得到的最大数。每次比较左边一格,以及上面一格的数,取两者较大值。然后加上本身即可。#include#include#include#include

2010-02-26 15:53:00 399

原创 zju3204 Connect them(最小生成树 kruskal 并查集应用)

kruskal算法的思想是,将每条边从小到大排序,然后从最小的开始选,如果这两个点不在同一个集合里,就利用并查集将两个集合合并,否则就放弃,直到选到第n-1条边为止,因为一个有n个节点的生成树只有n-1条边。这道题目主要的问题在于字典序(我本来以为答案要先按权值来排,再按字典序排,其实是全部按字典序排(没办法,英语不好)):1.要排两次,第一次排要按权值,起点,终点结构体三级排序。保证等会去选的顺

2010-02-25 23:05:00 633

原创 hdu3282 Running Median(排序)

刚开始我连题目都没读懂。。题意是,当每次读入数据到奇数位时,寻找中间值。比如第三组数据前五个数23 41 13 22 -3。首先第一个数是23,肯定输出23然后输入41 13,那么排序后得13 23 41,中间值还是23.再输入22 -3,排序后得-3 13 22 23 41,那么中间值是22接下来的一次类推。我是傻傻的排序,貌似跟刚学的插入排序差不多。在网上看见有更简单的方法,做个链接http:

2010-01-26 09:15:00 1465

原创 hdu1425 sort (hash)

简单的哈希表应用,对每个元素给一个映射地址,然后从后往前搜索,若h[i]!=0 就输出。  #includeusing namespace std;int h[1000001];int main(){ int n,m; while(scanf("%d%d",&n,&m)!=EOF) { fill(h,h+1000000+1,0); int

2010-01-13 23:23:00 802

原创 zju1947 The Settlers of Catan (DFS)

题意是有0 ~ n-1 个点,要从一个点出发,每条边只能走一次,使得经过的路径最长。我还是直接保存路径,然后DFS,只不过这次要用二维数组判断点i - j 是否已走过(若i - j 已被访问,则 j - i 也就被访问)。   #includeusing namespace std;const int Max=26;bool mat[Max][Max];bool v

2009-12-10 21:49:00 357

原创 zju1798 Granny's Bike (DFS)

题意是granny是否能从家里出发,走完每一个点仅一次然后回到家,也就是找是否存在汉密尔顿回路。数据规模小,我的方法是用二维数组保存连接点,然后DFS搜索。  #includeusing namespace std;const int Max=10;bool mat[Max][Max];int n,cnt,num=1;bool flag,vis[Max];

2009-12-10 14:35:00 480

原创 hdu3140 Money Matters 并查集

 题意是有几个人分布在不同的城市,只有在同城市的人才能交换使收支综合等于0。因为n在[0,10000],所以不能保存路径然后DFS了,数组太大。用并查集,将每个人分到自己的城市,若每一个城市里的人的money总和都等于0,则POSSIBLE,否则相反。   #includeusing namespace std;const int Max=10001;int set[M

2009-12-02 23:36:00 665

空空如也

空空如也

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

TA关注的人

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