Given an array of citations **A** (each citation is a non-negative integer) of a researcher, write a function to compute the researcher’s h-index.

**According to the definition of h-index:** “A scientist has index **h** if **h** of his/her **N** papers have at least h citations each, and the other **N − h** papers have no more than **h** citations each.”

**Note:** If there are several possible values for **h**, the maximum one is taken as the h-index.

**Input Format:**

```
First and only argument of input contains an integer array A of size N
```

**Output Format:**

```
return a single integer denoting h-index.
```

**Constraints:**

```
1 <= N <=3e6
1 <= A[i] <= 1e9
```

**For Example:**

```
Input 1:
A = [3, 0, 6, 1, 5]
Output 1:
3
Explanation 1:
[3,0,6,1,5] means the researcher has 5 papers in total and each of them had received 3, 0, 6, 1, 5 citations respectively.
Since the researcher has 3 papers with at least 3 citations each and the remaining two with no more than 3 citations each, her h-index is 3.
Input 2:
A = [20, 10, 5]
Output 2:
3
```

NOTE:You only need to implement the given function. Do not read input, instead use the arguments to the function. Do not print the output, instead return values as specified. Still have a doubt? Checkout Sample Codes for more details.

Sign Up

to access hints and editorial solutions for**H-index**

to access hints and editorial solutions for

Loading...