A. Easy h-index(阅读理解题目)

mac2022-06-30  28

A. Easy h-index

错误理解:看题目第一眼,水题,只要输入的时候统计下数据,if(a[i] >= i ) 就可以,wa了2发。

正确理解:h-index又称为h指数或h因子(h-factor),是一种评价学术成就的新方法。h代表“高引用次数”(high citations),一名科研人员的h指数是指他至多有h篇论文分别被引用了至少h次。 也就是说h为100,这个人就有100篇论文至少引用了100次。

题解:他要求最大h,所以我们从大到小遍历,遍历的每一个数都加起来,判断总和是不是大于等于i(i是数组下标),如果大于就结束了,输出i;否则继续累加。

#include<iostream> #include<algorithm> #include<cstring> using namespace std; typedef long long ll; const int maxn=1e6+10; ll a[maxn]; int main() { ios::sync_with_stdio(false); ll m; while(cin>>m) { for(ll i=0;i<=m;i++) { cin>>a[i]; } ll sum=0; for(int i=m;i>=0;i--) { sum+=a[i]; if(sum>=i) { cout<<i<<endl; break; } } } return 0; }
最新回复(0)