7 15 新浪微博熱門話題

2021-08-30 21:31:14 字數 816 閱讀 1345

大體思路是字串按行輸出(這裡注意getchar()),每一行用set儲存話題(便於去重),然後把每一行出現的話題放入map集合中,因為map我不太會排序,轉化一下思路,遍歷map,將每乙個map對轉化成pair存入vector陣列,這樣就可以排序了,然後輸出就可以。不過肯定有寫細節需要注意了,比如在向集合裡存話題時,將非英文本母非數字的字元全部轉化為空格,多個空格合併成乙個空格,否則就會格式錯誤。

#include #define inf 1e10

using namespace std;

typedef long long ll;

mapma;

map::iterator qq;

sets;

set::iterator it;

vector> pa;

bool cmp(paira, pairb)

int main()

else if(buf[i] == '#' && l1 != -1)

l2 = i;

if(l2 != -1)

sort(pa.begin(),pa.end(),cmp);

int num = pa[0].second;

string x = pa[0].first;

x[0] = (char)(x[0] + 'a' - 'a');

int oth = 0;

for(int i = 1;i < pa.size();i++)

cout

if(oth)

return 0;

}

7 15 新浪微博熱門話題 (30 分)

題目 本題目要求實現乙個簡化的熱門話題推薦功能,從大量英文 因為中文分詞處理比較麻煩 微博中解析出話題,找出被最多條微博提到的話題。輸入格式 輸入說明 輸入首先給出乙個正整數n 10 5 隨後n行,每行給出一條英文微博,其長度不超過140個字元。任何包含在一對最近的 中的內容均被認為是乙個話題,輸入...

新浪微博熱門話題 (30 分)

本題目要求實現乙個簡化的熱門話題推薦功能,從大量英文 因為中文分詞處理比較麻煩 微博中解析出話題,找出被最多條微博提到的話題。輸入說明 輸入首先給出乙個正整數n 10 5 隨後n行,每行給出一條英文微博,其長度不超過140個字元。任何包含在一對最近的 中的內容均被認為是乙個話題,輸入保證 成對出現。...

7 46 新浪微博熱門話題 30 分

這個30分不好拿呀,可以借鑑的知識點 map根據value排序,其實是用vector中的pair進行排序。首先題目讀錯了,忽略了還有數字,注意到這個問題以後,第三個測試點還是過不去。後來看了別人的部落格才發現,原來除了字母和數字的其他字元,要先替換成空格才行。每個話題在一行中只標記一次。別人的測試樣...