zoukankan      html  css  js  c++  java
  • HDU 1029

    题意:给定N个数,选出其中数量大于(N+1)/2的数

    两种方法实现,第一种方法排序,选择中间的那个数。第二种方法搜一遍。

    #include <iostream>
    #include <algorithm>
    #include <cstring>
    #include <cstdlib>
    #include <cstdio>
    using namespace std;
    
    int a[1024000];
    
    int main()
    {
        int n;
        while(cin >> n){
            for(int i = 0; i < n; ++i) cin >> a[i];
            sort(a, a + n);
            cout << a[(n-1)/2] << endl;
        }
        return 0;
    }


    #include <iostream>
    #include <algorithm>
    #include <cstring>
    #include <cstdlib>
    #include <cstdio>
    using namespace std;
    
    int main()
    {
        int n;
        while(cin >> n){
            int maxx = 0, cnt = 0;
            for(int i = 0; i < n; ++i){
                int t; cin >> t;
                if(!cnt){
                    maxx = t;
                    ++cnt;
                }else{
                    if(t == maxx) ++cnt;
                    else --cnt;
                }
            }
            cout << maxx << endl;
        }
        return 0;
    }
    



  • 相关阅读:
    bootstrap
    bootstrap
    IDEA 配置maven
    jQuery
    jQuery
    jQuery
    jQuery
    Jquery
    【k8s】Pod-metadata
    【k8s】terminationMessagePolicy
  • 原文地址:https://www.cnblogs.com/kunsoft/p/5312672.html
Copyright © 2011-2022 走看看