1
class Solution(object):
2
def sampleStats(self, count):
3
"""
4
:type count: List[int]
5
:rtype: List[float]
6
"""
7
maxv, minv, acc, cnt, mode, modev = None, None, 0, 0.0, 0, 0
8
for i, n in enumerate(count):
9
if minv == None and n != 0:
10
minv = i
11
if n != 0:
12
maxv = i
13
if n > modev:
14
modev, mode = n, i
15
acc, cnt = acc + n * i, cnt + n
16

17
midCnt, cc, midv, prei = cnt // 2, 0, 0, i
18
for i, n in enumerate(count):
19
if n == 0:
20
continue
21
if cc + n <= midCnt:
22
cc, prei = cc + n, i
23
continue
24
if cnt % 2 == 1:
25
midv = i
26
else:
27
midv = (prei + i) / 2.0 if cc == midCnt else i
28
break
29
return (minv, maxv, acc / cnt, midv, mode)

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0