![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编程之美
从零开始学习的ZHL
已工作但很弱鸡的学习者
展开
-
24点游戏
给4个数,范围1~13之间,允许有相同的数,采用加减乘除,括号运算,并且允许中间运算有小数,每个数使用一次,构造表达式,使其结果为24,例如,输入 11,8,3,5 输出 (11-8)*(3+5)=24解法一,穷举(在OJ平台上用这个方法时,居然出现WA,还有就是有另一种方法,暂时还没学习,学了后再添加上来)//f(array)//{// if(array.length<2)// {...原创 2018-05-16 15:49:00 · 152 阅读 · 0 评论 -
求二叉树中节点的最大距离
参考:http://www.cnblogs.com/miloyip/archive/2010/02/25/1673114.html他的方法比书上的更易懂。#include<iostream>#include<algorithm>using namespace std;struct TreeNode{ TreeNode* left; TreeNode* ...原创 2018-08-03 16:45:50 · 238 阅读 · 0 评论 -
1的数目
输入一个数N,从1开始,到N的所有整数,出现的“1”的个数。例如:N = 121,2,3,4,5,6,7,8,9,10,11,121的个数是5,所以输出5 第一个方法就是对1到N的每个数,看每个数的每一位是否为1,是的话count+1。但这是一种低效的方法。第二个方法是找规律:假设N = abcde如果是计算百位上的1出现的次数,它受到三个因素影响:百位上的数字,百...原创 2018-09-08 22:13:15 · 156 阅读 · 0 评论 -
不要被阶乘吓倒
问题1.给定一个整数N,N的阶乘末尾有多少个0?例如,N=10,N! = 3628800,末尾2个0N! = K * 10^M,且K不能被10整除,那么 N!末尾有M个0考虑对 N! 进行质因数分解 ,N! = (2^X) * (3^Y) * (5^Z)......,由于 10 = 2 * 5,所以M只和X,Z相关,每一对2和5相乘得到一个10,所以 M = min(X,Z),X>...原创 2018-09-06 22:54:24 · 122 阅读 · 0 评论