#3845. 兔猫信奥学院的“H 指数”考核

兔猫信奥学院的“H 指数”考核

🐰🐱 题目描述

兔猫信奥学院举办年度科研竞技,小兔和小猫需要帮助加菲老师统计各位学者的科研影响力——即著名的 H 指数。加菲老师给出了一个已经按非降序排列的引用次数序列 cits,其中 cits[i] 表示第 (i) 篇论文的被引用次数。

H 指数 定义:一个学者的 H 指数是最大整数 (h),使得在其所有论文中,至少有 (h) 篇论文每篇被引用了至少 (h) 次。

为了挑战同学们的算法能力,加菲老师要求你设计并实现一个对数时间复杂度的算法,快速计算出该学者的 H 指数。


📥 输入格式

第一行:整数 n  
第二行:n 个整数 cits[0..n-1],按非降序排列
  • \(1 \le n \le 10^5\)
  • \(0 \le cits[i] \le 10^3\)

📤 输出格式

一个整数:该学者的 H 指数

💡 输入输出样例

样例 1

5
0 1 3 5 6
3

因为有 3 篇论文被引用次数至少为 3。

样例 2

3
1 2 100
2

有 2 篇论文被引用次数至少为 2。


📊 数据范围

  • 序列长度 (n) 最多 10510^5
  • 引用次数范围 ([0,,10^3])。
  • 要求算法时间复杂度 (O(\log n))。