Loading...
题目描述给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。保证base和exponent不同时为0思路对于正数$exponent$,直接用快速幂在$log(exponent)$复杂度内求解,对于负数$exponent$,将其变成整数,将$base$变为$1.0/base$class Solution { public: do...
题目链接输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。思路思路一: 利用lowbit函数作用每次计算出n的最低位1的位权,这样可以...
题目描述我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?比如n=3时,2*3的矩形块有3种覆盖方法:思路这题是《剑指Offer(七):斐波拉契数列》的变种,做法和其一样,不在这里描述,详情见class Solution { public: int rectCover(int number) { ...
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。思路这题是《剑指Offer(八):跳...
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。思路本题和题目斐波拉契数列基本是一样的,第n阶可以从n-1阶通过跳1级台阶到达,也可以从n-2阶跳2级台阶到达。所以设F[n]表示到达第n阶方案数,有F[1]=1,F[2]=2,F[i]=F[i-1]+F[i-2] (2)思路 同《剑指Offer(七):斐波拉契数列》