一、题目描述
一个机器人位于一个m x n
网格的左上角(起始点在下图中标记为Start
)。
机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为Finish
)。
问总共有多少条不同的路径?
示例 1
输入: m = 3, n = 7
输出: 28
示例 2
输入: m = 3, n = 2
输出: 3
解释: 从左上角开始,总共有 3 条路径可以到达右下角。
一个机器人位于一个m x n
网格的左上角(起始点在下图中标记为Start
)。
机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为Finish
)。
问总共有多少条不同的路径?
示例 1
输入: m = 3, n = 7
输出: 28
示例 2
输入: m = 3, n = 2
输出: 3
解释: 从左上角开始,总共有 3 条路径可以到达右下角。
给定一个正整数n
,将其拆分为k
个正整数的和(k >= 2
),并使这些整数的乘积最大化。
返回你可以获得的最大乘积。
示例 1
输入: n = 2
输出: 1
解释: 2 = 1 + 1, 1 × 1 = 1。
示例 2
输入: n = 10
输出: 36
解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36。
泰波那契序列Tn
定义如下:
T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0 的条件下 Tn+3 = Tn + Tn+1 + Tn+2
给你整数n
,请返回第n
个泰波那契数Tn
的值。
示例 1
输入: n = 4
输出: 4
解释:
T_3 = 0 + 1 + 1 = 2
T_4 = 1 + 1 + 2 = 4
示例 2
输入: n = 25
输出: 1389537
假设你正在爬楼梯。需要n
阶你才能到达楼顶。
每次你可以爬1
或2
个台阶。你有多少种不同的方法可以爬到楼顶呢?
示例 1
输入: n = 2
输出: 2
解释: 有两种方法可以爬到楼顶。
示例 2
输入: n = 3
输出: 3
解释: 有三种方法可以爬到楼顶。
斐波那契数(通常用F(n)
表示)形成的序列称为斐波那契数列。该数列由0
和1
开始,后面的每一项数字都是前面两项数字的和。也就是:
给定n
,请计算F(n)
。
示例 1
输入: n = 2
输出: 1
解释: F(2) = F(1) + F(0) = 1 + 0 = 1
当且仅当每个相邻位数上的数字x
和y
满足x <= y
时,我们称这个整数是单调递增的。
给定一个整数n
,返回小于或等于n
的最大数字,且数字呈单调递增。
示例 1
输入: n = 10
输出: 9
示例 2
输入: n = 1234
输出: 1234
给你一个字符串数组tokens
,表示一个根据逆波兰表示法表示的算术表达式。
请你计算该表达式。返回一个表示表达式值的整数。
注意:
'+'
、'-'
、'*'
和'/'
。编写一个算法来判断一个数n
是不是快乐数。
「快乐数」的定义为:
1
,也可能是无限循环但始终变不到1
。1
,那么这个数就是快乐数。如果n
是快乐数就返回true
;不是则返回false
。
给你一个正整数 num 。如果 num 是一个完全平方数,则返回 true ,否则返回 false 。
完全平方数 是一个可以写成某个整数的平方的整数。换句话说,它可以写成某个整数和自身的乘积。
不能使用任何内置的库函数,如 sqrt 。
示例 1:
输入: x = 16
输出: true
解释: 返回 true ,因为 4 * 4 = 16 且 4 是一个整数。
示例 2:
输入: x = 14
输出: false
解释: 返回 false ,因为 3.742 * 3.742 = 14 但 3.742 不是一个整数。
给你一个非负整数 x ,计算并返回 x 的 算术平方根 。
由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。
注意:不允许使用任何内置指数函数和算符,例如 pow(x, 0.5) 或者 x ** 0.5 。
示例 1:
输入: x = 4
输出: 2
解释: 4的平方根是2,所以返回2.
示例 2:
输入: x = 8
输出: 2
解释: 8 的算术平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。