摘要: 初学Python,零零散散的大概花了三天时间看了《简明Python教程》,整理笔记的过程还是很有意义的。文档地址:http://sebug.net/paper/python/index.html《简明 Python 教程》笔记-----面向对象及系统相关1、缩进: 就是指块,相当于C里面的{ },对齐就是{ 跟 }匹配number = 1while number < 5: print numbernumber += 1print 'Done'上面的代码会一直输出1,因为下一句number+=1不在while的范围内2、运算符与它们的用法http://sebug.net/p 阅读全文
posted @ 2012-04-22 17:56 kfinder 阅读(787) 评论(0) 推荐(0) 编辑
摘要: 文档地址:http://sebug.net/paper/python/index.html《简明 Python 教程》笔记-----基础知识1、类①.每个函数都有个self参数,代表对象,类和对象所属变量,相当于C++中的‘静态变量’和‘某对象变量’ 如果类Person self.name为对象变量,Person.name为类变量class Person: population = 0 def__init__(self ,name): self.name = name population = population + 1 def __del__(self): popul... 阅读全文
posted @ 2012-04-22 17:53 kfinder 阅读(631) 评论(2) 推荐(0) 编辑
摘要: 今天在看MIT公开课【编程范式】的时候发现二进制码补码只是不是很清楚,于是推一下负数 原码 推 补码注:t(原码),a(反码),c(补码)拿15举例 15: 00000000 00001111 (t)要推出-15 ,因为 15 + (-15)= 015:00000000 00001111 ,0 :00000000 00000000所以-15: 00000000 00001111 + ? (-15) = 00000000 00000000 因为: 11111111 11111111 + 1 = 00000000 00000000所以我们先算出和为1111... 阅读全文
posted @ 2011-08-21 13:35 kfinder 阅读(6412) 评论(0) 推荐(0) 编辑
摘要: 平时基本都用C,用到C++也是基本的cin,cout,调调sort什么的,今天自己练练STL写几个二维容器,也只是基本输入输出,遇到一些小问题。//vector ,list ,deque 属于顺序容器, //长度的问题不会对功能构成影响,所以可以在定义的时候 //对其进行初始化,即a(MAX),如下 vector<vector<int> > aa1(10); //************输入一般写法************* for(i=0;i<10;i++){ for(j=0;j<10;j++){ aa1[i].push_back((10-i)*(10-j 阅读全文
posted @ 2011-06-25 20:22 kfinder 阅读(3321) 评论(0) 推荐(0) 编辑
摘要: ACM到底是个什么东西,我该怎么看待它,是时候该想清楚了。自问: 自己搞了ACM也算是有一年多的时间,虽然没什么成绩,但毕竟时间花在那里,逃课通宵刷题也是为了它,可现在自己能干什么真的不知道,有时候觉得看这种纯算法的东西,并没有让我认为,在这个计算机专业里能比别人强了多少。平时上的专业课,我听了会了,别人也听了会了,可能我刷过题的原因,同一个东西比别人敲的快一点,思路清晰一点,但是不代表人家不会,而且别人其他方面也可能会比你强。看了很多神牛博客以及各种渠道得知,以后的工作并不是很需要ACM,这是事实。那ACM到底是个什么东西,我该怎么看待它,是时候该想清楚了。ACM个人理解剖析:层次1.ACM 阅读全文
posted @ 2011-05-02 12:46 kfinder 阅读(4408) 评论(2) 推荐(2) 编辑
摘要: 2007年到来了。经过2006年一年的修炼,数学神童zouyu终于把0到100000000的Fibonacci数列(f[0]=0,f[1]=1;f[i] = f[i-1]+f[i-2](i>=2))的值全部给背了下来。接下来,CodeStar决定要考考他,于是每问他一个数字,他就要把答案说出来,不过有的数字太长了。所以规定超过4位的只要说出前4位就可以了,可是CodeStar自己又记不住。于是他决定编写一个程序来测验zouyu说的是否正确。input: 输入若干数字n(0 <= n <= 100000000),每个数字一行。读到文件尾。output:输出f[n]的前4个数字( 阅读全文
posted @ 2011-04-20 15:39 kfinder 阅读(1109) 评论(0) 推荐(0) 编辑
摘要: 对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。此题题意正是求这个函数 φ函数的值 通式:φ(x)=x(1-1/p1)(1-1/p2)(1-1/p3)(1-1/p4)…..(1-1/pn),其中p1, p2……pn为x的所有质因数,Euler函数 x是不为0的整数。φ(1)=1(唯一和1互质的数就是1本身)。 (注意:每种质因数只一个。比如12=2*2*3 那么φ(12)=12*(1-1/2)*(1-1/3)=4) 若n是质数p的k次幂,φ(n)=p^k-p^(k-1)=(p-1)p^(k-1),因为除了p的倍数外,其他数都跟n互质。 欧拉函数是积性函数——若m,n互质,φ(mn) 阅读全文
posted @ 2011-04-18 22:25 kfinder 阅读(851) 评论(0) 推荐(0) 编辑
摘要: 数学题 刚开始思路: 求n的倍数,能推出相应位根程周期性变化,比如:(56)和(29)位根都是2,n*(56) 和 n*(29)位根都是n*(2), 由于位根为1位,所以周期最大是10,但n最大只能推倒到32,观察能看出规律,整个n程周期性变化,于是果断猥琐 打表A之(中途打错,贡献2WA - -)后google看算法,竟可数学推出,ym啊以下为摘数学算法: 因为ab*ab=(10*a+b)*(10*a+b)=100*a*a+10*2*a*b+b*b=a*a+2*a*b+b*b=(a+b)*(a+b) abc*abc=(100*a+10*b+c)*(100*a+10*b+c) =10000*. 阅读全文
posted @ 2011-04-01 22:21 kfinder 阅读(614) 评论(0) 推荐(0) 编辑
摘要: /*题意:输出首尾串相同的前段位置 ,例abbcaabb,符合的:abb--abb,abbcaabb--abbcaabb,所以输出3,8思路:Kmp 此题对于刚接触kmp的新手(比如说我),可以更深一点理解kmp思想 我们先看看两个例子abbcaabb,输出的是3,8 ababcababababcabab,输出2,4,9,18 其实可以看出一个规律,例一:next[8] = 3; next[3] = 0;例二:next[18] = 9; next[9] = 4; next[4] = 2; next[2] = 0; 那么是不是只要把字符串长度(l)输出,然后递归输出next[l] (l = ne 阅读全文
posted @ 2011-02-20 14:04 kfinder 阅读(369) 评论(0) 推荐(0) 编辑
摘要: /* 基本题意:给一个字符串,如果在前 i 位置处满足连续循环A^K(A:单位循环段, K:循环个数),则输出i和K 这题跟pku 2406差不多 YY : kmp 保存 next[i],如果满足 i能被单位长度(i - next[i])整除,说明 (i - next[i])是单位循环段A,i /(i - next[i])也就是K。 举两个例子应该就能理解 例一: i : 12345678 字符串 : abababab next[i]: 00123456 这个例子假如当i等于8时,next[i] = 6; K也就是4,如果你有“ 你只是看 了后面[next[i]+1,i ] 这一段,不能代表全 阅读全文
posted @ 2011-02-19 20:18 kfinder 阅读(366) 评论(0) 推荐(0) 编辑
摘要: /* 题意:给两个字符串a,s,判断a在s里出现的个数*/#include <stdio.h>#include <string.h>int next[10005];char a[10005];char s[1000005];int n,len_a,len_s;void Get_Next(){ a[0] = '#';//因为是a+1,如果a[0]不存在,那strlen(a) = 0 ; !!!!!!!!!!! len_a = strlen(a); len_s = strlen(s); next[1] = 0; int j = 0; for(int i=2; 阅读全文
posted @ 2011-02-19 18:58 kfinder 阅读(524) 评论(0) 推荐(0) 编辑
摘要: 本打算搞掉2222,此题之神如同其题号,百度得知是AC自动机,后知要运用KMP的东西,于是转向此题入门题意:给一个字符串,输出包括从1到len长 字符串前缀的总个数YY: 基本思想是 KMP + DP,主要看KMP kmp思想:对字符串进行预处理,记录与当前位置i后缀相同的“最近”位置,用next[i]记录, 保证 s[1 .. i] 中 s[i - next[i] + 1 .. i] 与 s[1 .. next[i]] 是相同的, 以便在某处字符不匹配时,不用重新从头判断一遍,只要从对应的next[i]即可, 因为中间有部分与自身重叠,减少了不必要的判断,实现见代码。 例1: i : 123 阅读全文
posted @ 2011-02-17 16:12 kfinder 阅读(3598) 评论(0) 推荐(0) 编辑
摘要: /* 闲来无事,本打算敲道水题,谁知纠结了很长一会儿- - 自我BS 大数加法*/#include <iostream>using namespace std;int s[100][5],c[5];int len;void Add(int a[],int b[],int d[]){ int i,yu = (a[0] + b[0])/100000000; d[0] = (a[0]+b[0... 阅读全文
posted @ 2011-02-11 17:28 kfinder 阅读(268) 评论(0) 推荐(0) 编辑
摘要: /* hdu 2444 题意:判断是否是二分图,并输出最大匹配数 YY:用'临点填色法'判断,相邻点异色,发现同色则不成立 然后匈牙利算法, 求出个数除2 注:匈牙利算法时间复杂度 '邻接表': O(mn),邻接矩阵: O(n^3)*/#include <stdio.h>#include <string.h>bool map[210][210];//连接图bool vis... 阅读全文
posted @ 2011-01-23 17:01 kfinder 阅读(2385) 评论(2) 推荐(0) 编辑
摘要: /* 题意: 给N个比赛结果,输出拓扑排名 YY:拓扑排序,初搞,最近练邻接表,感觉比邻接矩阵快的多 两个都写了一下,竟差两倍之多,邻接表神物啊!!!*///邻接表 Accepted 1285 15MS 248K 1030 B C++ kfinder#include <iostream>using namespace std;int ind[505]; // indeg... 阅读全文
posted @ 2011-01-21 19:14 kfinder 阅读(2410) 评论(0) 推荐(0) 编辑
摘要: /*题意:给个二维数组,'.'可以走,'X'不可走,'1-9'代表在此消耗的时间输出记录从(0,0)到(n-1,m-1)的耗时最小值YY: :从(n-1,m-1)到(0,0)逆向BFS,记录上一点,直接输出最优序列*/#include <iostream>#include <queue>using namespace std;const int MAX = 99999999;int n,m;struct zu{ char c; int num,x,y,qianx,qiany;}map[110][110];int dir[4 阅读全文
posted @ 2011-01-20 12:49 kfinder 阅读(849) 评论(4) 推荐(0) 编辑
摘要: /* 题意:给出一个图,求源点到其他各个点之和 加上 其他各个点到源点之和的最小值 思路:SPFA, 建两个表,顺序不说, 逆序的情况:在初始化的时候在反向保存另一相同表 即: 1 ---> 2 13 反向后:2 ---> 1 13 要求各点到源点的距离和,即求源点到各点的距离和 所以,处理好后,只要求两次源点到各点距离和相加即可 精髓:静... 阅读全文
posted @ 2011-01-19 18:16 kfinder 阅读(477) 评论(0) 推荐(0) 编辑
摘要: 等一等,吃蛋糕之前先考大家一个问题:如果校长大人在蛋糕上切了N刀(校长刀法极好,每一刀都是一个绝对的平面),最多可以把这个球形蛋糕切成几块呢?做不出这个题目,没有蛋糕吃的!为-了-母-校-,为-了-蛋-糕-(不是为了DGMM,枫之羽最会浮想联翩...),加-油-!Input输入数据包含多个测试实例,每个实例占一行,每行包含一个整数n(1=n=1000),表示切的刀数。Output对于每组输入数据,请输出对应的蛋糕块数,每个测试实例输出一行。Sample Input123 Sample Output248转:http://blog.csdn.net/liyanguestc/archive/2 阅读全文
posted @ 2011-01-18 10:02 kfinder 阅读(1107) 评论(0) 推荐(0) 编辑
摘要: /* 题意:判断字符串之间是否存在完全覆盖 搞了一下午,一直MLE,动态的表需要释放 内存空间,弄成静态的就不用了*/#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>using namespace std;struct node { struct ... 阅读全文
posted @ 2011-01-17 16:41 kfinder 阅读(832) 评论(0) 推荐(0) 编辑
摘要: /* 问题:输入一段英文,对照给的单词的映射,输出映射后的字符串 YY :典型的字典树问题,先处理好映射表,在一映射单词结尾处记录与之对应的单词, 后面字符串处理一下,单个单词进行查,找到后输出,没有输出原始词 刚开始交RE越界,不解,觉得是指针问题,但找不出错处 后来找到个神奇数据后改过就A了 /* START dog aa END START a aa END */*/#... 阅读全文
posted @ 2011-01-16 16:17 kfinder 阅读(1080) 评论(0) 推荐(0) 编辑
摘要: /*   问题如题目 典型的字典树,可以当模板 指针的运用; 申请空间;*/#include <stdio.h>#include <string.h>#include <stdlib.h>struct node{ struct node *child[26];//指针,先申请一个地址,后面用到再申请空间 int num;};struct node *root;v... 阅读全文
posted @ 2011-01-16 12:35 kfinder 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 转:[代码] 阅读全文
posted @ 2011-01-16 10:01 kfinder 阅读(3268) 评论(0) 推荐(0) 编辑
摘要: /* 这个代码对我自己来说,写的算是比较工整了(大牛勿BS); 里面的函数可以当模板用*/#include <stdio.h>#include <string.h>char dpM[1100][1100],dpF[1100][1100]; void in_add(char s[], char max[],char min[]){ int l1=strlen(max); in... 阅读全文
posted @ 2010-12-20 13:19 kfinder 阅读(449) 评论(0) 推荐(0) 编辑
摘要: /* 基础多重背包题 比较有价值的就 “ 二分制压缩 ” 了,将每个个数长度num压缩成log(num)*/#include <cstdio>#include <cstring>struct One{ int v; int c;};One peo[100001];int hash[15][15];int dp[100005];int max( in... 阅读全文
posted @ 2010-12-16 12:44 kfinder 阅读(480) 评论(0) 推荐(0) 编辑
摘要: http://acm.hdu.edu.cn/forum/read.php?tid=15908&page=e&#ahttp://hi.baidu.com/matrush/blog/item/749bf38d058ca7f1503d9263.html/cmtid/2213e5d4e366e92107088ba7 阅读全文
posted @ 2010-12-07 21:33 kfinder 阅读(257) 评论(0) 推荐(0) 编辑