NOJ南邮上机 社交网络 PROB1029 Python

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

  • 10
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

顾凡a

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值