IP地址统计
提交数: 646, 通过率: 55.11%, 平均分: 66.17
题目描述:
IP地址是一个32位的二进制数,通常被分割成4个“8位二进制数”。IP地址通用用“点分十进制”表示成a.b.c.d的形式,其中a,b,c,d均为0~255之间的十进制数。如点分十进制IP地址100.4.5.6,实际上是32位二制数01100100.00000100.00000101.00000110。
现在给定一批IP日志数据,形如:172.31.31.2 -- [04/Jun/2019:06:30:10 +0800]。
试统计出现次数最多的IP地址。
输入格式:
第一行一个数T。
接下来T行,每行一个IP地址的日志数据。
输出格式:
一行内容,先是出现最多的IP地址,然后输出最多的次数,两项内容用一个空格隔开。
样例输入:
5 172.31.31.2 -- [04/Jun/2021:06:30:10 +0800] 172.31.31.2 -- [04/Jun/2021:06:31:15 +0800] 172.31.31.2 -- [04/Jun/2021:06:33:22 +0800] 172.131.1.50 -- [04/Jun/2021:07:30:10 +0800] 172.131.1.50 -- [04/Jun/2021:07:30:50 +0800]
样例输出:
172.31.31.2 3
提示:
算法提示:
def showmax( list ):
p = 0
max = 0
#请在下面完善代码
return list[p], max #以元组的形式返回
ips = [ ]
T = int( input() )
for i in range( T ):
line = input()
ip = line.split( )[ 0 ]
ips.append( ip )
x = list( showmax( ips ) ) #返回的元组,建一个列表
print( x[0], x[1] )
时间限制: 1000ms空间限制: 256MB
来源: 省编作业本1-P76