nyoj-154-king选太子

king 选 太子
时间限制:3000 ms  |  内存限制:65535 KB
难度:1

描述

    啊,从前有一个国家。此国兵强马壮,但是国王却身体不好。于是就想挑一位太子出来;

    但是问题来了,国王不知道他有几个孩子(这国王糊涂吧!),他只知道他的孩子的年龄都是不同的。同时这个国王也有要求,他认为孩子年龄太大的过于迂腐,而年龄太小又不成熟,(这孩子挑的也太难了吧),他就想要年龄在他们孩子之间是最中间的(如果孩子的个数为偶数,那么选中间的两个皇子中年龄较大的那个)。

输入
    第一行有一个整数T,代表有T组数据(T<=10)
    第二行有一个整数n(0<n<=15),紧随着有n个数代表有n个皇子(年龄都是整数)
输出
    每行输出这串数字的太子的年龄
样例输入

    2
    3
    1 2 3
    4
    1 2 3 4

样例输出

    2
    3

#include "stdio.h"
int main(int argc, char const *argv[])
{
    int n;
    freopen("input.txt","r",stdin);
    scanf("%d",&n);
    while(n--)
    {
        int a[16],b,i,k,l,temp;
        scanf("%d",&b);
        for(i=0; i<b; i++)
        {
            scanf("%d",&a[i]);
        }
        for(k=0; k<b; k++)
            for(l=0; l<b-k-1; l++)
                if(a[l]>a[l+1])
                {
                    temp=a[l];
                    a[l]=a[l+1];
                    a[l+1]=temp;
                }
        printf("%d\n",a[b/2]);
    }
    return 0;
}

#include<stdio.h>
#include<stdlib.h>
int cmp(const void*a,const void*b )
{
    return *(int*)a-*(int*)b;
}
int main()
{
    int m,a[16],i,n;
    scanf("%d",&m);
    while(m--)
    {
        scanf("%d",&n);
        for(i=0; i<n; i++)
            scanf("%d",&a[i]);
        qsort(a,n,sizeof(a[0]),cmp);
        printf("%d\n",a[n/2]);

    }
    return 0;
}// c函数排序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值