![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
文章平均质量分 74
Oswin
安静的思考,踏实的走路
展开
-
计算质因数
问题: 计算一个数的质因数个数,1不是质因数。比如20=2*2*5,2、2、5就是20的三个质因数。思路: 从小到大,找到N的因数M,递归查找M和N/M的的质因数。原创 2014-10-22 21:57:26 · 839 阅读 · 0 评论 -
把数字串变成2012玛雅密码
问题: 玛雅密码是一串由0、1、2组成的密码,这串数字中如果包含2012,就可以解开末日的大门。给定一串由0、1、2组成的字符串,只有相邻的数字可以交换,求通过最少多少次变换可以得到玛雅密码,并给出这串密码。 思路: 经过很久很久的尝试,放弃了一次性拼凑2012的想法,改用预处理得到所有数字范围中符合玛雅密码的部分,再递归遍历给定的数字串,得到该串所有可原创 2014-10-22 21:57:23 · 1063 阅读 · 0 评论 -
把数字拆分成2的幂的和
问题: 任何数都能分解成2的幂,比如 7=1+1+1+1+1+1+1 =1+1+1+1+1+2 =1+1+1+2+2 =1+2+2+2 =1+1+1+4 =1+2+4共有6种分解方式,设f(n)为任意正整数可能分解总数,比如f(7)=6写个算法,输入数,求出其分解的总数。原创 2014-10-22 21:55:23 · 3241 阅读 · 0 评论 -
计算数自然数序列中的1和2
问题: 给定一个自然数N,计算1,2,3...N中,出现1和2的数量。比如1,2,3...10,一共出现了3次,1,2,3...12,一共出现了7次。 思路: 比如计算54321,可以先计算50000,再计算50001-54321中1和2的个数,而后者又可以看成计算4321中1和2的个数,于是简化了问题。其中计算50000的时候,可以计算49999中有多原创 2014-10-22 22:02:06 · 1427 阅读 · 0 评论