1991 - 请客吧!少年
时间限制 : 1 秒
内存限制 : 128 MB
山东建筑大学ACM协会今年开通了OJ、也就是你现在在用的这个评测系统!小伙伴们都注册账号在OJ上做题了。看了小伙伴的做的题目、感觉小伙伴们好厉害呀!凯歌做了49,盖做了48,logzhangrui 做了45,离歌笑、程功、梁玮做了36,rainbow飞仙完成了30个题目。。。。感觉都好厉害啊有木有!当然,做的题目多不一定就厉害,因为大神们有可能早在别的OJ做了几百道了^_^
今天ACM协会制定了一项新的规则、做出题目数位于第二名(做出的题目第二多)的人请大家吃饭!
题目输入
第一行输入小伙伴的人数n(2<=n<=100),第二行输入他们分别解出的题目数m(1<=m<=9999)。有多组输入。
题目输出
输出要请大家吃饭的人做出的题目数m。若找不出请客的人,输出“NO”。
注意:请客吃饭的人可能有多个!比如,最多的做出10道、第二多的有3名同学,都做出9道,那么、由这三名同学请客吃饭!
输入/输出样例
输入格式
5 10 8 9 7 3 4 6 7 4 15 5 6 6 6 6 6
输出格式
9 7 NO
C语言解答
#include<stdio.h> int main(void) { int i,j,n,k,l,sum=0,f=0; int t,a[100]; while(scanf("%d",&n)!=EOF) { f=0; for(i=0;i<n;i++) scanf("%d",&a[i]); for(k=1;k<n;k++) for(j=0;j<n-k;j++) if(a[j]>a[j+1]) { t=a[j];a[j]=a[j+1];a[j+1]=t; } for(i=n-2;i>=0;i--) if(a[i]!=a[n-1]) {l=a[i];f=1;break;} if(f==0) printf("NO\n"); else printf("%d\n",l); } return 0; }
C++解答
#include<stdio.h> #include<algorithm> using namespace std; int s[107]; int cmp(int a,int b) { return a>b; } int main() { int n,i; while(scanf("%d",&n)!=EOF) { for(i=0;i<n;i++) { scanf("%d",&s[i]); } sort(s,s+n,cmp); if(s[0]==s[n-1]) { printf("NO\n"); } else { for(i=1;i<n;i++) { if(s[i]!=s[0]) { printf("%d\n",s[i]);break; } } } } return 0; }