您好,欢迎来到化拓教育网。
搜索
您的当前位置:首页NOJ南邮上机 社交网络 PROB1029 Python

NOJ南邮上机 社交网络 PROB1029 Python

来源:化拓教育网

PROB1029   社交网络

描述:

《社交网络》是一部上映于2010年的电影,讲述了一个关于社交网络的故事。在这个故事中,马克·扎克伯格(Mark Zuckerberg)在哈佛大学宿舍中创立了,这个社交网络最终成为了全球最大的社交网络之一。

在 数据库中,用户是一个个数字代码,而好友是用一条条记录来表示的。例如,如果 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。

输出:

输出一个整数,表示社交网络中拥有最多好友的人的好友数量。

样例输入:

样例输出: 

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))

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo9.cn 版权所有 赣ICP备2023008801号-1

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务