自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (3)
  • 收藏
  • 关注

原创 poj1002

统计重复个数,很容易想到hash,建立一个int数组,把电话号码的数字形式作为hashcode,数组记录出现的次数。 当有海量数据计算重复次数的时候,我们经常这么做,因为数据量相对于hashcode的范围来说是很大的,所以利用hash数组保存出现次数是划算的。 但是这道题hashcode的范围是0~1000000,而n与hashcode相当或更小,这时候hash数组平均下来就会有很多空间被浪费

2012-04-23 13:53:06 443

原创 poj 3274

#include #include using namespace std; #define N 100003 int n,k,tmp,mask,sum,jump,res; int arr[100005][35]; int h[N]; bool same; int main(){ //streambuf *backup; // ifstream fin; // fin.

2012-04-19 15:58:07 516

原创 poj 3349

1. 采用hash方法,size要是一个大质数。这样可以减少碰撞。 2. hash函数从discuss摘抄如下: 1. 直接相加, 把(总和%大质数)为key. 2. 平方和相加, 把(总和%大质数)为key. 3. 从小到大的顺序, 对v[i]<<(i*3)依次异或, 然后模一个大质数作为key.(by hust07p43) 4. 六个数中非零数的积再乘上一个大质数,然后模一个100w上

2012-04-18 20:35:34 511

原创 poj 1573

模拟题 #include #include using namespace std; int m,n,in,path[12][12],x,y,c1,c2; char board[12][12]; char c; bool proceed(){ if(xm||yn){ c1=path[x][y]-1; c2=0; return false; } int x1,y1; x1=x;

2012-04-16 20:29:42 438

原创 poj 2632

注意数组index跟图中index并不相同,把图垂直翻转一下就可以了,SN方向要对调一下,向左其实是向右,向右是向左。#include #include using namespace std; short board[101][101],from,to; int times; int A,B,N,M,x,y,id,repeat; char c; short px[101],py[101],pc[

2012-04-16 17:13:05 457

原创 poj 2192

依然是字符串的dp,这回建Bool数组dp,dp[i][j]=1表示第一串的前i个和第二串的前j个匹配。 计算dp[i][j],如果a[i]与b[j]相同,则选择一个跟c匹配,只要其子问题dp[i-1][j](选a的进行匹配)或dp[i][j-1](选b的进行匹配)有一个为真就可以。 如果a[i]和b[j]不相同,则看哪一个能匹配,如果能匹配,则相应的子问题能匹配就可以,如果不能匹配,直接为f

2012-04-15 22:08:35 501

原创 poj1159

假设有指针i,j指向字符串的首尾,即初值为0,n-1。 如果字符相等,则总插入次数等于字符串(i+1,j-1)的总插入次数。 如果字符不相等,则有在i处插入一个和j处相等的字符和在j处插入和i处相等的字符两种选择,选择的依据是字符串(i,j-1)总插入次数和字符串(i+1,j)哪个小。 由此子问题和递推关系都有了。 然后是边界条件。设字符串(i,j)总插入次数是res[i][j]。 注意

2012-04-14 19:43:54 1303

原创 poj1080

#include #include using namespace std; int times; char a[101],b[101]; int a_size,b_size; int result[101][101]; int table[5][5]={ {5,-1,-2,-1,-3}, {-1,5,-3,-2,-4}, {-2,-3,5,-2,-2}, {-1,-2,-2,5,-1},

2012-04-14 10:25:18 568

原创 对网上最大字段和dp解法建模的勘误

设有array[1~n],求最大字段和。 而网上的说法是b[j]是array[1~j]的最大字段区间。如果这是子问题,那么当j=n,则b[j]就是最终结果,显然不是这样,不然sum变量是做什么的呢,何况b[n]也没被用来做最终结果。 实际上这个问题的线性解法描述应该是这样的。 有一串数字,程序从头依次逐个地读取。 (1)若这个数是负数,则舍弃继续往下读。 (2)如果是正数,则从这个数开始

2012-04-13 10:58:21 521

转载 Turing机、人工智能以及我们的世界【matrix67.com】

昨天终于读完了《The Annotated Turing》一书,第一次完整地阅读了 Turing 最经典的那篇论文,理解了 Turing 机提出的动机和由此带来的一系列结论。不过,这本书的最大价值,则是让我开始重新认识和思考这个世界。在这里,我想把我以前积累的哲学观点和最近一些新的思考记下来,与大家一同分享。《The Annotated Turing》一书中的一些学术内容,留待以后几篇日志与大家分

2012-04-10 21:39:10 816

原创 linux将输出重定向

用vim想把内容复制到剪切板,"+y没有效果,暂时还没找到解决办法,只好cat之后鼠标复制。 意外的发现一个命令xsel,可以重定义输出,包括到剪切板。感觉很方便,在这里记一下。 使用方法 cat file | xsel -b

2012-04-07 20:28:43 540

转载 有25匹马选出top3

有25匹马,每匹马都以恒定的速度赛跑,当然马与马之间的速度是不相等的,总共有5个赛道,就是说每轮最多只能有5个马同时赛跑。问题是:要确定出跑的最快的前三名马,需要最少多少轮比赛? 7场的方案  分5组     比赛5次  (ABCDE)决出    A1   A2   A3   A4   A5  B1   B2   B3   B4   B5  C1   C2   C3   C4

2012-04-07 19:11:52 2201

原创 杭电1995

群里有人问,我就去做了下。汉诺塔这方面的问题以前也没有考虑过,不过这种肯定是有章可循的。 最先想到的是在汉诺塔move的步骤上检查一下index,如果是所要求的计数就加1. 不过递归方法n=20以上效率就明显降下来了。 汉诺塔的递推式是f(n)=2*f(n-1)+1,这个从递归的方法中也可以总结出来。不过用来当非递归方法可以,对于这道题就用不上了。 对题中的例子手算了一下,

2012-04-06 14:50:14 878

大学生攻克Linux系统教程

大学生攻克Linux系统教程(又名天下没有难学的Linux)。一位在校大学生整理的教程,献给每一位要征服Linux的学习者-五星级的Linux教程。   本书汇集众多Linux学习者的心血与贡献,有很多作者在默默的为你呼喊,感谢他们的贡献。从学习Linux的那天起,我只记住一个词,那就是攻克。    一个障碍,一个学习Linux的最大障碍-无指导-在困扰着每一位企图闯出初中级Linux困境的人。攻克Linux系统教程给你提供动力,帮助你闯出难关。为何这么有把握?原因很简单,天下没有难学的Linux。

2010-03-15

java GUI basic example package

java GUI basic example 打包

2010-01-07

java基础程序模板打包

java基础程序包,java初学者的程序必备模板打包

2010-01-07

空空如也

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

TA关注的人

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