實現函式double power(double base, int exponent),求base的exponent次方。不得使用庫函式,同時不需要考慮大數問題。
示例 1:
輸入: 2.00000, 10
輸出: 1024.00000
示例 2:
輸入: 2.10000, 3
輸出: 9.26100
示例 3:
輸入: 2.00000, -2
輸出: 0.25000
解釋: 2-2 = 1/22 = 1/4 = 0.25
說明:
-100.0 < x < 100.0
n 是 32 位有符號整數,其數值範圍是 [−231, 231 − 1] 。
底數為0,指數為負數時,是非法輸入返回0.0
將接受進來的int n,用long型別的變數來存,防止越界
在求多少次方的時候用遞迴的方式去求,奇數次冪和偶數次冪分別處理
判斷浮點數是否相等,寫乙個自己的函式來完成。
**:
class
solution
double
mypow
(double x,
int n)
unsigned
int absn =
(unsigned
int)
(nn);if
(nn <0)
double result =
helper
(x,absn);if
(nn <0)
return result;
}double
helper
(double x,
unsigned
int n)
if(n ==1)
double result =
helper
(x, n>>1)
; result *
= result;
if(n &
0x1==1)
return result;}}
;
輸入數字 n,按順序列印出從 1 到最大的 n 位十進位制數。比如輸入 3,則列印出 1、2、3 一直到最大的 3 位數 999。
示例 1:
輸入: n = 1
輸出: [1,2,3,4,5,6,7,8,9]
說明:
用返回乙個整數列表來代替列印
n 為正整數
考慮大數問題,用全排列解決問題
**:
class
solution
void
dfs(
int index,
int n, string &s)
for(
int i =
0;i<10;
++i)}}
;
思路:
dfs全排列列印
**:
#include
using
namespace std;
void
dfs(
int index,
int n, vector<
int>
& boxs, vector<
int> book,string str)
cout
for(
int i =
1; i <=n ;
++i)}}
intmain()
每天一刷20200602
問題 寫出乙個程式,接受乙個正浮點數值,輸出該數值的近似整數值。如果小數點後數值大於等於5,向上取整 小於5,則向下取整。思路 其實就是實現乙個正浮點數的四捨五入,可以呼叫math.h中的round 函式直接完成,有點討巧。include include using namespace std in...
每天一刷20200603
問題 編寫乙個函式,計算字串中含有的不同字元的個數。字元在acsii碼範圍內 0 127 換行表示結束符,不算在字元裡。不在範圍內的不作統計。注意是不同的字元 思路 跟之前做過的乙個題相似,那個題是字串去重,稍作修改就行了。include include using namespace std in...
每天一刷20200605
昨天返校,沒有做題。問題 功能 等差數列 2,5,8,11,14 輸入 正整數n 0 輸出 求等差數列前n項和 返回 轉換成功返回 0 非法輸入與異常返回 1 思路 這個題其實就是簡單的等差數列求和,設定好初始項,然後控制好迴圈次數即可。ps 在處理輸入的時候要注意用while 來讀取輸入,不然提交...