基本思路,对数组计数,后画一个正方形,由于在前面的都高于后面,所以只需要找到第一个不满足正方形的值i,就是最终的答案,
边界情况:长度为1,且第一个数字是0,则输出0,否则输出1
代码如下:
class Solution:
def hIndex(self, citations: List[int]) -> int:
n=len(citations)
if n== 1 and citations[0]!=0:
return 1
elif n==1 and citations[0]==0:
return 0
citations.sort(reverse=True)
for i in range(n):
while citations[i]<=i:
return i
else:
return n