華為 簡單錯誤記錄

2021-08-04 18:25:41 字數 797 閱讀 8713

開發乙個簡單錯誤記錄功能小模組,能夠記錄出錯的**所在的檔名稱和行號。 

處理:1.記錄最多8條錯誤記錄,對相同的錯誤記錄(即檔名稱和行號完全匹配)只記錄一條,錯誤計數增加;(檔案所在的目錄不同,檔名和行號相同也要合併)

2.超過16個字元的檔名稱,只記錄檔案的最後有效16個字元;(如果檔名不同,而只是檔名的後16個字元和行號相同,也不要合併)

3.輸入的檔案可能帶路徑,記錄檔名稱不能帶路徑

一行或多行字串。每行包括帶路徑檔名稱,行號,以空格隔開。

檔案路徑為windows格式

如:e:\v1r2\product\fpgadrive.c 1325

將所有的記錄統計並將結果輸出,格式:檔名**行數數目,乙個空格隔開,如: fpgadrive.c 1325 1 

結果根據數目從多到少排序,數目相同的情況下,按照輸入第一次出現順序排序。

如果超過8條記錄,則只輸出前8條記錄.

如果檔名的長度超過16個字元,則只輸出後16個字元

分析:乙個字串處理題,用的是vector實現,有幾個注意點。

1、字串的去重,解決方法直接掃一遍陣列。

2、排序 ,stable_sort()

3、如果長於16位字元,擷取最後16位字元

code:

#include #include #include #include #include #include #include using namespace std;

struct cmp

};int main()

cout<

華為OJ(簡單錯誤記錄)

描述 開發乙個簡單錯誤記錄功能小模組,能夠記錄出錯的 所在的檔名稱和行號。處理 1 記錄最多8條錯誤記錄,迴圈記錄,對相同的錯誤記錄 淨檔名稱和行號完全匹配 只記錄一條,錯誤計數增加 2 超過16個字元的檔名稱,只記錄檔案的最後有效16個字元 3 輸入的檔案可能帶路徑,記錄檔名稱不能帶路徑。知識點字...

華為OJ 簡單錯誤記錄

簡單錯誤記錄 開發乙個簡單錯誤記錄功能小模組,能夠記錄出錯的 所在的檔名稱和行號。處理 1 記錄最多 8條錯誤記錄,迴圈記錄,對相同的錯誤記錄 淨檔名稱和行號完全匹配 只記錄一條,錯誤計數增加 2 超過 16個字元的檔名稱,只記錄檔案的最後有效 16個字元 3 輸入的檔案可能帶路徑,記錄檔名稱不能帶...

華為機試題 簡單錯誤記錄

開發乙個簡單錯誤記錄功能小模組,能夠記錄出錯的 所在的檔名稱和行號。處理 1 記錄最多8條錯誤記錄,迴圈記錄,對相同的錯誤記錄 淨檔名稱和行號完全匹配 只記錄一條,錯誤計數增加 2 超過16個字元的檔名稱,只記錄檔案的最後有效16個字元 3 輸入的檔案可能帶路徑,記錄檔名稱不能帶路徑。輸入描述 一行...