PATグレードA-1029中央値(25ポイント)

タイトル:1029中央値(25ポイント)
分析:マージ後の2つの配列の中央値を見つけます。1、2、3、4の中央値は2です。
初めて書いたときは、合格率が低すぎてあえて試してみなかったのですが、このレビューでは簡単な方法を使いました。
他の人が自慢したいと言っているのを見ると、~~~
#include <iostream>
#include<cstring>
#include<vector>
#include<stdio.h>
#include<queue>
#include<math.h>
#include<stack>
#include<algorithm>
#include<map>
#include<set>
#define MAX 99999999
using namespace std;
typedef long long ll;

ll a[4000001];
int main()
{
    
    
    ll n,m;
    scanf("%lld",&n);
    ll i =0;
    for(i = 0;i<n;i++){
    
    
        scanf("%lld",&a[i]);
    }
    scanf("%lld",&m);
    for(;i<m+n;i++){
    
    
        scanf("%lld",&a[i]);
    }
    sort(a,a+n+m);
    ll med = (n+m)/2;
    if((n+m) % 2 == 0)
        med --;
    cout<<a[med];
    return 0;
}

おすすめ

転載: blog.csdn.net/qq_43567222/article/details/112863192