
刷题中让我觉得好玩的
文章平均质量分 61
Aline2021-yxz
代码改变世界
展开
-
返回给定二叉树中一层最多的节点个数(仅使用队列实现)
思路点拨:我们知道对二叉树实现层序遍历(也就是一层一层遍历)需要使用队列,而要找出节点最多的那一层,必然避不开要算出每一层节点的个数,那也就避不开层序遍历。除此之外,我们还需要维护几个变量:1:curend//当前层的最后一个节点2:nextend//下一层的最后一个节点3:curcount//当前层节点个数4:maxcount//最多的节点个数有了这几个变量,我们就可以完成这件事情,之后我们可以这样理解层序遍历:层序遍历时删除的都是当前层的节点,入的都是下一层的节点为了便于理解,先看一个例原创 2022-02-05 19:43:46 · 598 阅读 · 2 评论 -
和为 K 的最少斐波那契数字数目(贪心)
题目描述:给你数字 k ,请你返回和为 k 的斐波那契数字的最少数目,其中,每个斐波那契数字都可以被使用多次。斐波那契数字定义为:F1 = 1F2 = 1Fn = Fn-1 + Fn-2 , 其中 n > 2数据保证对于给定的 k ,一定能找到可行解。示例 :输入:k = 7输出:2解释:斐波那契数字为:1,1,2,3,5,8,13,……对于 k = 7 ,我们可以得到 2 + 5 = 7 。原题链接:1414. 和为 K 的最少斐波那契数字数——leetcode题目分原创 2022-02-04 15:00:13 · 831 阅读 · 0 评论 -
不要二(暴力+找规律)
题目描述: 二货小易有一个W*H的网格盒子,网格的行编号为0 ~H-1,网格的列编号为0 ~W-1。每个格子至多可以放一块蛋糕,任意两块蛋糕的欧几里得距离不能等于2。 对于两个格子坐标(x1,y1),(x2,y2)的欧几里得距离为: ( (x1-x2) * (x1-x2) + (y1-y2) * (y1-y2) ) 的算术平方根小易想知道最多可以放多少块蛋糕在网格盒子里。输入描述: 每组数组包含网格长宽W,H,用空格分割.(1 ≤ W、H ≤ 1000)输出描述: 输出一个最多可以放的蛋糕数 .原创 2022-02-03 15:30:11 · 393 阅读 · 0 评论 -
火柴棍等式(暴力枚举)
题目描述:给你n个火柴棍,判断能够构成多少个A+B=C(A,B,C为由0~9构成的正整数)形式的等式,其中+与=各由两个火柴棍构成,非零数字的最高位不为零,0 ~ 9的构成如下:时间限制:1sn<=24例子:n=18输出:9 ,因为可构成: 0+4=4、0+11=11、1+10=11、2+2=4、2+7=9、 4+0=4、7+2=9、10+1=11、11+0=11。题目分析:n个火柴棍,其中四个明确被使用,那只要通过不断对每个位置枚举,只要满足等式并且三个数的火柴棍总数等于n-4就满足原创 2022-02-02 15:21:11 · 949 阅读 · 0 评论 -
leetcode372——超级次方
题目链接:超级次方只是看到题目,还没看内容就觉得是要用快速幂来玩,但是做完后感觉还是遍历简单使用mod的性质:(a*b)%c=( a % c * b % c ) % c 来解决溢出class Solution {public: //计算c的seconary次方 int pow1(int c, int secondary) { int res = 1; while (secondary) { res = ((res%1337)*(c%1337)) % 1337; //上原创 2021-12-05 23:56:20 · 132 阅读 · 0 评论