摘要: 开始的时候没有用字典树WA了好多次,学了之后马上就A了,哈哈哈哈爽! 1 #include <iostream> 2 #include"stdio.h" 3 #include"string.h" 4 #include"stdlib.h" 5 6 using namespace std; 7 8 const int MAX = 26; 9 10 struct Tree{11 struct Tree *next[MAX];12 int number;13 };14 15 void init( struct Tree *t ){ 阅读全文
posted @ 2013-05-29 21:46 hacker_hzh 阅读(125) 评论(0) 推荐(0)
摘要: 筛选法 求出n以内的素数,最快的应该是筛选法。筛选法的思路是:要求10000以内的素数,把1-10000都列出来,1不是素数,划掉;2是素数,所有2的倍数都不是素数,划掉;取出下一个幸存的数,划掉它的所有倍数;直到所有素数找完为止。 这种做法的空间复杂度是O(n),时间复杂度O(n/logn)。 1 const int Max = 1000005; 2 bool prime[Max]={0};//0表示素数,1为非素数 3 4 //筛选n以内的素数 5 void getPrime(int n) 6 { 7 int i,j; 8 int t; 9 for(i = 2;... 阅读全文
posted @ 2013-05-06 20:05 hacker_hzh 阅读(353) 评论(0) 推荐(0)
摘要: 以下内容直接copy自《python核心编程》,只为今后自我复习,如果有能帮到您的,那将是我的福气。 对象赋值实际上是简单的对象引用。也就是说当你创建一个对象,然后把它赋给另一个变量的时候,Python 并没有拷贝这个对象,而是拷贝了这个对象的引用。 比如,假设你想创建一对小夫妻的通用档案,名为person.然后你分别为他俩拷贝一份。在下面的例子中,我们展示了两种拷贝对象的方式,一种使用了切片操作,另一种用了工厂方法,为了区分出三个不同的对象,我们使用id()内建函数来显示每个对象的标识符。(我们还可以用is 操作符来做相同的事情)>>> person = ['nam 阅读全文
posted @ 2013-04-04 20:59 hacker_hzh 阅读(165) 评论(0) 推荐(0)
摘要: 今天收了下宿舍,突然发现好多书买了都没看,这样下去不行啊,再不看完整个节奏就变慢了啊啊啊,而且在大三的时候就没有大量的时间来看自己喜欢的书了啊啊啊,一定要在八月份之前把现在的书看完!!!!加油! 经过昨天的ACM新生赛,我发现我已经变慢了,思维没有以前那么开阔了,而且编程能力的优势也没有以前那么明显了,这都是别人的努力与自己的懈怠造成的啊,从现在起一定要努力啊!!!加油!昊哥! 阅读全文
posted @ 2013-04-01 23:05 hacker_hzh 阅读(100) 评论(0) 推荐(0)
摘要: 此文是转载 出处:http://blog.sina.com.cn/s/blog_7fec19cd01010h60.html不过我换上了我自己的代码hdu2050 折线分平面:1.当有n-1条直线时,平面最多被分成了f(n-1)个区域。则第n条直线要是切成的区域数最多,就必须与每条直线相交且不能有同一交点。这样就会得到n-1个交点。这些交点将第n条直线分为2条射线和n-2条线断。而每条射线和线断将以有的区域一分为二。这样就多出了2+(n-2)个区域。故:f(n)=f(n-1)+n=f(n-2)+(n-1)+n……=f(1)+1+2+……+n=n(n+1)/2+12.根据直线分平面可知,由交点决定 阅读全文
posted @ 2013-03-30 00:47 hacker_hzh 阅读(166) 评论(0) 推荐(0)
摘要: 这一题我开始一直在想直接的递推关系 但失败了 最后看了别人的思路才知道这样也可以:up[i]表示最后一步是向上而来的次数,lr[i]表示最后一步是向左或向右而来,则总方法数为sum[i] = up[i] + lr[i]。而 up[i] = up[i-1] + lr[i-1],lr[i-1] = lr[i-1] + 2 * up[i-1]。于是就有sum[i] = sum[i-1] * 2+ sum[i-2] ( 我的代码没有用这个公式,而且这个公式我自己也没有推,直接从别人那借用的 )代码如下: 1 #include <stdio.h> 2 #include <stdlib. 阅读全文
posted @ 2013-03-30 00:37 hacker_hzh 阅读(106) 评论(0) 推荐(0)
摘要: 终于过了啊.........代码如下: 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 5 int main() 6 { 7 int aadbignumber( char a[], char b[] ); 8 char a[110], b[110]; 9 int T, i;10 11 scanf( "%d", &T );12 while( T ){13 14 for( i = 0; i < 110; i ++ )a[i] = '0& 阅读全文
posted @ 2013-03-29 13:46 hacker_hzh 阅读(149) 评论(0) 推荐(0)
摘要: 当a 和b异号的时候肯定不会溢出当同号的时候只需注意下 k == 64时 max = 0x7fffffffffffffff(15个f)其他的max = ( 1 <<( k - 1 ) - 1 )代码如下: 1 #include <stdio.h> 2 #include <stdlib.h> 3 4 int main() 5 { 6 __int64 max, a, b, k; 7 8 while( scanf( "%I64d", &k ) != EOF ) 9 {10 scanf( "%I64d%I64d", & 阅读全文
posted @ 2013-03-26 21:30 hacker_hzh 阅读(129) 评论(0) 推荐(0)
摘要: 感觉现在是一种在下降的趋势,这样下去不行啊。以前的努力不能白费了。从去年来学校到现在,每一次改变都必须为之付出巨大的代价,今后一定要如履薄冰!如履薄冰啊!加油!!!一定要坚持!!!每天要写代码 啊啊啊啊!!!!!即使好多作业要做,也要坚持每天写代码!!!! 阅读全文
posted @ 2013-03-26 16:21 hacker_hzh 阅读(79) 评论(0) 推荐(0)
摘要: 核心笔记:保留行分隔符 当使用输入方法如 read() 或者 readlines() 从文件中读取行时, Python 并不会删除行结束符. 这个操作被留给了程序员. 例如这样的代码在 Python 程序中很常见:f = open('myFile', 'r')data = [line.strip() for line in f.readlines()]f.close() 类似地, 输出方法 write() 或 writelines() 也不会自动加入行结束符. 你应该在向文件写入数据前自己完成核心笔记: 行分隔符和其它文件系统的差异 操作系统间的差异之一是它们所 阅读全文
posted @ 2013-03-25 20:08 hacker_hzh 阅读(164) 评论(0) 推荐(0)
点击右上角即可分享
微信分享提示