第九次CCF软件能力认证A题-中间数 知识点:枚举 简单一次过

48 阅读1分钟

3237. 中间数 - AcWing题库

因为n是1000,所以可以用第一层for循环枚举每个数i,第二层for循环枚举每个数j和i进行比较:

#include<bits/stdc++.h>

using namespace std;
const int N=1e3+10;
int a[N];
bool flag;
int cnt1,cnt2;
int main()
{
    int n;cin>>n;
    
    for(int i=0;i<n;i++)cin>>a[i];
    
    for(int i=0;i<n;i++)
    {cnt1=0,cnt2=0;
        for(int j=0;j<n;j++)
        {
            if(a[j]<a[i])cnt1++;
            else if(a[j]>a[i])cnt2++;
        }
    
        if(cnt1==cnt2)flag=1;
        if(flag){
            cout<<a[i]<<endl;
            return 0;
    }
            
        }
    cout<<"-1"<<endl;
  
    return 0;
}

image.png