• HDU 3282 Running Median 动态中位数,可惜数据范围太小


    Running Median

    Time Limit: 1 Sec  Memory Limit: 256 MB

    题目连接

      http://acm.hdu.edu.cn/showproblem.php?pid=3282

    Description

    For this problem, you will write a program that reads in a sequence of 32-bit signed integers. After each odd-indexed value is read, output the median (middle value) of the elements received so far.

    Input

    The first line of input contains a single integer P, (1 ≤ P ≤ 1000), which is the number of data sets that follow. The first line of each data set contains the data set number, followed by a space, followed by an odd decimal integer M, (1 ≤ M ≤ 9999), giving the total number of signed integers to be processed.
    The remaining line(s) in the dataset consists of the values, 10 per line, separated by a single space.
    The last line in the dataset may contain less than 10 values.

    Output

    For each data set the first line of output contains the data set number, a single space and the number of medians output (which should be one-half the number of input values plus one). The output medians will be on the following lines, 10 per line separated by a single space. The last line may have less than 10 elements, but at least 1 element. There should be no blank lines in the output.

    Sample Input

    3
    1 9
    1 2 3 4 5 6 7 8 9
    2 9
    9 8 7 6 5 4 3 2 1
    3 23
    23 41 13 22 -3 24 -31 -11 -8 -7
    3 5 103 211 -311 -45 -67 -73 -81 -99
    -33 24 56

    Sample Output

    1 5 1 2 3 4 5 2 5 9 8 7 6 5 3 12 23 23 22 22 13 3 5 5 3 -3 -7 -3

    HINT

    题意

      给你n个数,每次插入一个数,当插入数的数量为奇数的时候,我们就输出中位数

    题解:

    这道题要求动态求中位数,但是数据范围太小了,于是我们直接暴力搞就好了

    事先排序,然后每次都扫一遍就行了……

    代码:

    //qscqesze
    #include <cstdio>
    #include <cmath>
    #include <cstring>
    #include <ctime>
    #include <iostream>
    #include <algorithm>
    #include <set>
    #include <vector>
    #include <sstream>
    #include <queue>
    #include <typeinfo>
    #include <fstream>
    #include <map>
    typedef long long ll;
    using namespace std;
    //freopen("D.in","r",stdin);
    //freopen("D.out","w",stdout);
    #define sspeed ios_base::sync_with_stdio(0);cin.tie(0)
    #define maxn 100005
    #define mod 10007
    #define eps 1e-9
    //const int inf=0x7fffffff;   //无限大
    const int inf=0x3f3f3f3f;
    /*
    
    */
    //**************************************************************************************
    inline ll read()
    {
        int x=0,f=1;char ch=getchar();
        while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
        while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}
        return x*f;
    }
    struct node
    {
        int x,y;
    };
    node a[maxn];
    bool cmp(node b,node c)
    {
        return b.x<c.x;
    }
    int main()
    {
        int t=read();
        for(int cas=1;cas<=t;cas++)
        {
            vector<int> ans;
            int n=read(),m=read();
            for(int i=0;i<m;i++)
                a[i].x=read(),a[i].y=i+1;
            sort(a,a+m,cmp);
            for(int i=0;i<m;i+=2)
            {
                int flag=0;
                for(int j=0;j<m;j++)
                {
                    if(a[j].y<=i+1)
                        flag++;
                    if(flag==(i+2)/2)
                    {
                        ans.push_back(a[j].x);
                        break;
                    }
                }
            }
            printf("%d %d",cas,ans.size());
            for(int i=0;i<ans.size();i++)
            {
                if((i)%10==0)
                    printf("
    ");
                if(i%10==0)
                    printf("%d",ans[i]);
                else
                    printf(" %d",ans[i]);
    
            }
            printf("
    ");
    
        }
    }
  • 相关阅读:
    WSL下的Ubuntu 18.04LTS配置软件源和系统更新
    宝塔 5.9.2 最终版 专业版
    宝塔面板7.2.0学习版集合--包含(专业版、企业版及部分插件)
    网络安全学习和CTF必不可少的一些网站
    Hello Blog !
    如何解决机器学习树集成模型的解释性问题
    机器学习建模老司机的几点思考与总结
    2019 秋招提前批蘑菇街一面面经(带答案)
    Java 最全异常讲解
    Spring Context 你真的懂了吗
  • 原文地址:https://www.cnblogs.com/qscqesze/p/4386718.html
Copyright © 2020-2023  润新知