PROB1029 社交网络
描述:
《社交网络》是一部上映于2010年的电影,讲述了一个关于社交网络的故事。在这个故事中,马克·扎克伯格(Mark Zuckerberg)在哈佛大学宿舍中创立了Facebook,这个社交网络最终成为了全球最大的社交网络之一。
在 Facebook 数据库中,用户是一个个数字代码,而好友是用一条条记录来表示的。例如,如果 A 是 B 的好友,那么在数据库中就会有一条记录 (A, B)
。一旦出现了 (A, B)
,那么 (B, A)
就不会再出现, (A, B)
也不会再出现第二次。
现在,马克想要知道社交网络中拥有最多好友的人到底有多少好友。请你帮助马克编写一个程序,来统计社交网络中拥有最多好友的人的好友数量。
输入:
输入的第一行包含一个整数 n,表示数据库中的数据总数,题目保证 1≤n≤10^4 。
接下来 n 行,每行包含两个整数 ai 与 bi,表示代码为 ai 的用户与代码为 bi 的用户之间存在好友关系,题目保证 1≤ai,bi≤10^9 且 ai≠bi,同时题目保证用户数量不超过 1024。
输出:
输出一个整数,表示社交网络中拥有最多好友的人的好友数量。
样例输入:
4 1 2 2 3 3 1 4 1
样例输出:
3
样例输入:
1 3 9
样例输出:
1
样例输入:
5 77 2 53 78 1 2 2 3 9 7
样例输出:
3
基于python实现的代码:
def max_friends_numbers(n,friends):
nums = []
max_count = 0
counts = []
for i in range(n):
nums.append(friends[i][0])
nums.append(friends[i][1])
num_set = set(nums)
for num in num_set:
counts.append(nums.count(num))
return max(counts)
n = int(input())
friends = [tuple(map(int,input().split())) for _ in range(n)]
print(max_friends_numbers(n,friends))