1095 解碼PAT准考證 25分

2021-10-12 06:35:17 字數 1112 閱讀 7809

本題考查字串處理和結構體排序,關鍵點如下:

採用vector儲存結構體資料

指令1和指令3的排序是一樣的,可以復用

指令3,採用unordered_map儲存考場編號和總人數,並且可以避免超時。tip:map底層採用的是紅黑樹,有序的,可以採用中序遍歷從小到大遍歷出來,但是執行時間長;unordered_map採用的是雜湊雜湊,記憶體空間大,但是時間複雜度為o(1)

思路參考柳婼的部落格,特此感謝。

#include

#include

#include

#include

using namespace std;

struct node

;bool cmp

(const node &a,

const node &b)

intmain()

for(

int i =

0;i < m;i++)}

}else

if(type ==2)

}if(cnt !=0)

}else

if(type ==3)

}for

(auto it: m));

}}sort

(ans.

begin()

, ans.

end(

),cmp)

;for

(auto k : ans)if(

(cnt ==

0&& type ==2)

||((type ==

1|| type ==3)

&& ans.

size()

==0))

}system

("pause");

}

1095 解碼PAT准考證 (25 分)

1095 解碼pat准考證 25 分 pat 准考證號由 4 部分組成 第 1 位是級別,即 t 代表頂級 a 代表甲級 b 代表乙級 第 2 4 位是考場編號,範圍從 101 到 999 第 5 10 位是考試日期,格式為年 月 日順次各佔 2 位 最後 11 13 位是考生編號,範圍從 000 ...

1095 解碼PAT准考證 (25 分)

pat 准考證號由 4 部分組成 現給定一系列考生的准考證號和他們的成績,請你按照要求輸出各種統計資訊。輸入首先在一行中給出兩個正整數 n 10 4 和 m 100 分別為考生人數和統計要求的個數。接下來 n 行,每行給出乙個考生的准考證號和其分數 在區間 0,100 內的整數 其間以空格分隔。考生...

1095 解碼PAT准考證 (25 分)

pat 准考證號由 4 部分組成 現給定一系列考生的准考證號和他們的成績,請你按照要求輸出各種統計資訊。輸入首先在一行中給出兩個正整數 n 10 4 和 m 100 分別為考生人數和統計要求的個數。接下來 n 行,每行給出乙個考生的准考證號和其分數 在區間 0,100 內的整數 其間以空格分隔。考生...