OJ刷題記錄 問題 C 壓縮字串

2021-10-23 22:57:34 字數 935 閱讀 9562

題目要求:

編寫乙個程式,輸入乙個字串,然後採用如下的規則對該字串當中的每一

個字元進行壓縮:

(1) 如果該字元是空格,則保留該字元;

(2) 如果該字元是第一次出現或第三次出現或第六次出現,則保留該字元;

(3) 否則,刪除該字元。

例如,若使用者輸入「occurrence」,經過壓縮後,字元c的第二次出現被刪除

,第一和第三次出現仍保留;字元r和e的第二次出現均被刪除,因此最後的結果為

:「ocurenc」。

輸入輸入只有一行,即原始字串。

輸出輸出只有一行,即經過壓縮以後的字串。

樣例輸入 copy

occurrence

樣例輸出 copy

ocurenc

解題思路:

使用 map 容器實現字串中每種字元與其出現的次數一一對應。迴圈遍歷時對容器進行查詢,將沒有找到的字元,即第一次出現的字元作為鍵,次數 1 作為值寫入容器;而查詢到的字元,即並非第一次出現的字元,將其對應的值進行 +1 操作。其他的按照題目要求判斷即可。

通關**:

#include

#include

#include

using

namespace std;

intmain()

map<

char

,int

>

::iterator it = arr.

find

(*p);if

(it != arr.

end())

else

}else}

cout << str;

return0;

}

劍指offer刷題記錄 字串

請實現乙個函式用來判斷字串是否表示數值 包括整數和小數 例如,字串 100 5e2 123 3.1416 和 1e 16 都表示數值。但是 12e 1a3.14 1.2.3 5 和 12e 4.3 都不是。寫到一半,崩了,還沒儲存,心態崩了,從頭再來。其實劍指offer裡幾個字串的題目無非就是理清題...

OJ刷題記錄 問題 F 地質調查

題目要求 小明是乙個地質調查員,在他調查的地方突然出現個泉眼。由於當地的地勢不均勻,有高有低,他覺得這意味著這裡在不久的將來將會乙個小湖。水往低處流,凡是比泉眼地勢低或者等於的地方都會被水淹沒,地勢高的地方水不會越過。而且又因為泉水比較弱,當所有地勢低的地方被淹沒後,水位將不會 一直定在跟泉眼一樣的...

力扣刷題記錄 字串 簡單 859親密字串

給定兩個由小寫字母構成的字串 a 和 b 只要我們可以通過交換 a 中的兩個字母得到與 b 相等的結果,就返回 true 否則返回 false 輸入 a ab b ba 輸出 true 輸入 a ab b ab 輸出 false 輸入 a aa b aa 輸出 true 輸入 a aaaaaaabc...