每天一刷0817

2021-10-09 06:26:05 字數 1899 閱讀 2914

實現函式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 來讀取輸入,不然提交...