每天一刷20200603

2021-10-06 18:39:44 字數 975 閱讀 4633

問題

編寫乙個函式,計算字串中含有的不同字元的個數。字元在acsii碼範圍內(0~127),換行表示結束符,不算在字元裡。不在範圍內的不作統計。注意是不同的字元

思路

跟之前做過的乙個題相似,那個題是字串去重,**稍作修改就行了。

**

#include

#include

using

namespace std;

intmain()

; string str;

int count=

0,i;

cin >> str;

for(i =

0;str[i]

;++i)

for(i =

0;i<

128;

++i)

cout<}

問題

給乙個陣列,碰到0就複製它,最終生成的陣列和原來的陣列一樣大。要求在原來陣列上操作,函式返回void。

input:[1,0,2,3,0,4,5,0]

output:[1,0,0,2,3,0,0,4]

思路

真不會寫,參考了大佬的**

**

void

duplicatezeros

(vector<

int>

&a)}

for(i = i -

1; sh >0;

--i)

}

ps:這個題難在不用額外的空間。第一次從左到右遍歷,統計出移位的個數(shift);第二次從右到左,移動元素,如果元素為0的話,需要再複製乙個0,同時–sh。關鍵在於找到移位的規律

每天一刷20200602

問題 寫出乙個程式,接受乙個正浮點數值,輸出該數值的近似整數值。如果小數點後數值大於等於5,向上取整 小於5,則向下取整。思路 其實就是實現乙個正浮點數的四捨五入,可以呼叫math.h中的round 函式直接完成,有點討巧。include include using namespace std in...

每天一刷20200605

昨天返校,沒有做題。問題 功能 等差數列 2,5,8,11,14 輸入 正整數n 0 輸出 求等差數列前n項和 返回 轉換成功返回 0 非法輸入與異常返回 1 思路 這個題其實就是簡單的等差數列求和,設定好初始項,然後控制好迴圈次數即可。ps 在處理輸入的時候要注意用while 來讀取輸入,不然提交...

每天一刷20200609

問題 輸入描述 首先輸入數字n,表示要輸入多少個字串。連續輸入字串 輸出次數為n,字串長度小於100 輸出描述 按長度為8拆分每個字串後輸出到新的字串陣列,長度不是8整數倍的字串請在後面補數字0,空字串不處理。思路 用string 的方法來解決這個函式。include include include...