- 博客(15)
- 问答 (1)
- 收藏
- 关注
原创 hdu 1023 catalan
打印一个Catalan数列表。模板题。#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define LL long long#define
2015-03-28 19:50:22 324
原创 卡特兰数
一、 卡特兰数1、卡特兰数是满足下列递归式的数字: h(n)=h(0)h(n-1)+h(1)h(n-2)+h(2)h(n-3)+…+h(i)h(n-i-1)+…+h(n-1)h(0)(n>=2) 且,h(0)=1,h(1)=12、另一个递归式 h(n)=((4*n-2)/(n+1))*h(n-1) 它的解是:h(n)=C(
2015-03-28 16:34:11 608
原创 poj 3421
质因子分解加排列组合。 将一个整数分解成质因子连乘的形式,其项数是最多的。如:100=2*2*5*5,so the maximum length of X-factor chains is 4。#include #include #include #include #include #include #include #include #include #i
2015-03-28 11:38:11 571
原创 hdu 1212
模运算与基本四则运算有些相似,但是除法例外。其规则如下: (a + b) % p = (a % p + b % p) % p (1) (a - b) % p = (a % p - b % p) % p (2) (a * b) % p = (a % p * b % p) % p (3) (a^b) % p = ((a % p)^b)
2015-03-28 10:52:41 397
原创 poj 3126
给出两个四位的素数,要求对第一个素数进行一系列操作,每次操作只能改变一位数,且改变后必须仍然是素数,求最少的操作步数。 水题。 搜索加素数判定。普通的bfs就能过了,可悲的是我还刚开始还想用启发式搜索,结果算出来的不是最少步数,于是改成bfs过来。。。。#include #include #include #include #include #include #incl
2015-03-24 20:58:41 438
原创 poj 2689(区间素数筛选)
由于给出的L和U太大,直接打表是不可能了。但U-L代码如下:#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define LL long
2015-03-24 18:32:07 533
转载 素数与素性测试
素数与素性测试 一个数是素数(也叫质数),当且仅当它的约数只有两个——1和它本身。规定这两个约数不能相同,因此1不是素数。对素数的研究属于数论范畴,你可以看到许多数学家没事就想出一些符合某种性质的素数并称它为某某某素数。整个数论几乎就围绕着整除和素数之类的词转过去转过来。对于写代码的人来说,素数比想像中的更重要,Google一下BigPrime或者big_prime你总会发现大堆大堆
2015-03-24 14:46:06 530
原创 hdu 1431
就一道打表题,呃,至少我是打表。。。 先把题目范围内所有的素数回文总数求出来,发现只有779个,而且最大的一个是9989899,所以打表完全没问题的。代码如下:#include #include #include #include #include #include #include #include #include #include #include
2015-03-23 21:17:55 427
转载 hdu 4021(16数码)
题意:给出一个board,上面有24个位置,其中23个位置上放置了标有数字1~23的方块,一个为空位(用数字0表示),现在可以把空位与它旁边的方块交换,给出board的起始状态,问是否可以达到指定的状态。 思路:看起来很像著名的“八数码”问题,首先,针对八个特殊位置(死角),如果这里有空位就把它和相邻的位置交换,这样之后如果两个状态的对应死角上的数字不同,那么显然是不能达到
2015-03-17 20:36:55 463
原创 poj 1077(8数码)
8数码,又称九宫格,应该是大家都玩过的一种游戏。在一个3*3的棋盘上放有8个棋子,棋子可以上下左右移动,要求通过移动棋子,使棋盘从一种状态转换为另一种状态。 首先,明显地,这是一个搜索问题,共有9!种状态,并不算多,使用普通BFS或双向BFS就能解决,其次,为了保存状态,可以使用康托展开,这样能减省许多空间。 普通BFS在状态空间搜索时,搜索了许多无用的状态,导致了时间的浪费,
2015-03-17 08:28:56 351
原创 poj 2243(a*)
题意:给你一个8*8的国际象棋棋盘,然后在给你两个初末位置,问你按骑士的走法,最少几步内能从初位置走到末位置。 分析:简单的一个搜索题,为了练a*算法找来水一水。估价函数用曼哈顿距离就行了。 代码如下;#include #include #include #include #include #include #include #include #inc
2015-03-08 20:25:28 448
原创 poj 2983 (差分约束系统)
题目就是给你一组由等式和不等式组成的式子,让你判断这组式子是否有解。为了使用差分约束系统,将等式a-b=c转化为a-b>=c和a-b 代码如下:#include #include #include #include #include #include #include #include #include #include #include #include
2015-03-07 19:07:36 404
原创 poj 1201 (差分约束系统)
题意:给你n条线段,形如a b c,代表起点,终点以及最少从线段上取多少个点,问你在满足所有约束条件下最多能从所有线段上取多少个点。 分析:为了构造约束条件,首先想象有一个源点,d[x]就表示从源点到x点这个范围内取的点数,于是对每一条线段a b c,有d[b]-d[a]>=c,但后来发现这样不行,例如有1 3 3,3 5 2,按前面的构造方法求出来的解是5,但正确的解应该是4,因为
2015-03-07 16:58:58 598
原创 差分约束系统
首先说说定义,差分约束系统是指一组不等式,且每个不等式都由两个变量和一个常数组成,形如v=u+w,u和v是变量,w是常数。每个不等式都是一个约束条件,约束目的是使目标函数xs-xt最大或最小。 差分约束系统属于线性规划问题,不过神奇的是可以转换为图论问题,先做些简单的说明,就像有一组不等式: b-a c-b c-a
2015-03-02 21:04:47 505
原创 poj 3723(最大权森林)
题意:要招募n个男兵和m个女兵,而每招募一个人都要花费10000,这可是笔大开销,还好,可以用男女之间的关系减少费用,因为当招募一个士兵时,如果已招的人里与其有t点关系,则只需10000-n的费用。 给出r对关系,求出最少费用。 分析:当招募b时,若用了b与a 的关系,则在a和b之间连一条边,很明显,当全部招募后,会连出一个森林,这个森林的总权值就是
2015-03-01 14:03:23 813
空空如也
pyinstaller 打包引入gensim模块的脚本出错
2018-02-04
TA创建的收藏夹 TA关注的收藏夹
TA关注的人