python
CS滴恩社区区草
这个作者很懒,什么都没留下…
展开
-
【py交易】算法竞赛入门经典5.4.2 因子和阶乘 Python
题目: 分析:0.825除以2,除不尽(共0次);除以3,能除尽,再除以3,除不尽(共1次);除以5,能除尽,再除以5,能除尽,再除以5,除不尽(共2次)。。。所以为01201 1.输入一个数,计算这个数的阶乘,需要一个计算阶乘的函数:factorial,用到了递归 2.需要一个素数集,用isPrime函数 3.要用到键值对的存储结构,py可以用字典类存储,声明方法是 dick =原创 2016-11-23 00:07:18 · 700 阅读 · 0 评论 -
【py交易】算法竞赛入门经典6.3.1 小球下落 python
题目: 分析: 1.深度为D的开关二叉树共有2^D -1 个开关,从上到下,从做到右排序1,2,3,…,2^D-1 2.最开始,这课开关二叉树上的所有开关都是关闭状态,假设为off状态,当有一个小球经过以后,开关由off状态变为on状态 3.举个例子(不举),假设D=4,则共有15个开关,顺序如图上。 1)第一个小球下落的时候,首先经过开关1,因为开关1是off状态,所以小球往左走原创 2016-12-06 00:02:55 · 1404 阅读 · 0 评论 -
【py交易】算法竞赛入门经典5.4.3果园里的树 Python
分析: 1.可借助三角形的有向面积计算,原理不懂,但是有公式,记住就可: 如果 》0,则说明ABC三点呈现逆时针排列,<0反之,=0共线 2.三个点为A、B、C,三个点的x最大值是maxX,最小值是minX,y最大值是maxY,最小值是minY,虽然x和y属于1到99,但是x只需要遍历minX-maxX,y只需要遍历minY-maxY的整数点就可以了 3.假设任意一个点为P,则三角形内的原创 2016-11-24 00:44:00 · 539 阅读 · 0 评论 -
【py交易】算法竞赛入门经典5.4.4 多少块土地 python
分析: 1.题目不是太懂,看了一下网上的一些文章,其实跟题目讲的基本一样,所以还是不太懂。画个图比划比划就好多了 2.简单多面体的欧拉公式,记住就ok, V-E+F = 2 (Vertex,Edge,Face) 其中,这个Face是包含了椭圆面外的无限大平面,所以最后F = 2-V+E-1 = E-V+1,求出边数和定点数即可得出答案 3.最优方案:不会让任何3条线交于一点,这个提示很重要原创 2016-11-26 12:24:22 · 775 阅读 · 0 评论 -
【py交易】算法竞赛入门经典6.1.1卡片游戏 python
题目: 分析: 1.算法很简单,但是也有个小陷阱,输入n,如果python字典开的跟n一样大的话,后面会有问题(也就是书中用的c语言访问非法内存的问题) 2.假如n = 7,初始化字典为的key为1~7,value为1~7,队首front = 1,队尾rear = 8(比原始的往后一位) 1)输出 key为1的值:1,然后删了,队首后移一位变为2,把这队首赋值给队尾key=8 的值,然原创 2016-11-27 17:39:01 · 656 阅读 · 1 评论 -
【py交易】算法竞赛入门经典6.1.2 铁轨python
题目: 分析:(看过代码以后才有思路) 1.最简单的情况莫过于以A的顺序(直接)进入B或者以A的逆序进入B(需借助C) 2.除了1 的情况,都是比较复杂的,需要借助时不时的借助C,看懂书中的那段循环代码很重要(如图), 主要的思想如下: 假设A和C都有火车: 先看A,如果此刻**A的第一辆与此刻**B的第一辆相同,则就从A直接开到B 否则原创 2016-11-28 09:56:21 · 763 阅读 · 1 评论