| 12345678910111213141516171819 | func hIndex(citations []int) int {	n := len(citations)	index := make([]int, n+1)	for _, c := range citations {		if n <= c {			index[n]++		} else {			index[c]++		}	}	for i := n; 1 <= i; i-- {		if i <= index[i] {			return i		}		index[i-1] += index[i]  // So smart! The citations of h is the accumulation of index[h]~index[n]	}	return 0}
 |