電話聊天狂人

2022-05-05 06:06:06 字數 1286 閱讀 8459

給定大量手機使用者聯絡歷史,找出其中通話次數最多的聊天狂人。

輸入格式:

輸入首先給出正整數n(≤10^5)​​,為聯絡歷史條數。隨後n行,每行給出一條聯絡歷史。簡單起見,這裡只列出撥出方和接收方的11位數字構成的手機號碼,其中以空格分隔。

輸出格式:

在一行中給出聊天狂人的手機號碼及其通話次數,其間以空格分隔。如果這樣的人不唯一,則輸出狂人中最小的號碼及其通話次數,並且附加給出並列狂人的人數。

輸入樣例:

4

13005711862 13588625832

13505711862 13088625832

13588625832 18087925832

15005713862 13588625832

輸出樣例:

13588625832 3
可以用排序可以用hash,因為在學習hash就照著**碼了一下,還是有很多細節的

#include#include#include#includeusing namespace std;

typedef struct lnode* list;

typedef char elem[12];

struct lnode;

typedef struct tblnode* hashtable;

struct tblnode;

int hash(int key,int p)

int nextprime(int n)

return p;

}hashtable createtable(int tablesize)

return h;

}list find(hashtable h,string key)

bool insert(hashtable h,elem key)

else

}void scanandoutput(hashtable h)

else if(ptr->count==maxcnt)

ptr=ptr->next;

} }pcnt>1?printf("%s %d %d",minphone,maxcnt,pcnt):printf("%s %d",minphone,maxcnt);

}int main()

scanandoutput(h);

return 0;

}

電話聊天狂人

給定大量手機使用者聯絡歷史,找出其中通話次數最多的聊天狂人。輸入首先給出正整數n 10 5 為聯絡歷史條數。隨後n行,每行給出一條聯絡歷史。簡單起見,這裡只列出撥出方和接收方的11位數字構成的手機號碼,其中以空格分隔。在一行中給出聊天狂人的手機號碼及其通話次數,其間以空格分隔。如果這樣的人不唯一,則...

電話聊天狂人

給定大量手機使用者聯絡歷史,找出其中通話次數最多的聊天狂人。輸入格式 輸入首先給出正整數n 10 5 為聯絡歷史條數。隨後n行,每行給出一條聯絡歷史。簡單起見,這裡只列出撥出方和接收方的11位數字構成的手機號碼,其中以空格分隔。輸出格式 在一行中給出聊天狂人的手機號碼及其通話次數,其間以空格分隔。如...

電話聊天狂人

給定大量手機使用者聯絡歷史,找出其中通話次數最多的聊天狂人。輸入格式 輸入首先給出正整數n 為聯絡歷史條數。隨後n行,每行給出一條聯絡歷史。簡單起見,這裡只列出撥出方和接收方的11位數字構成的手機號碼,其中以空格分隔。輸出格式 在一行中給出聊天狂人的手機號碼及其通話次數,其間以空格分隔。如果這樣的人...