zoukankan      html  css  js  c++  java
  • 洛谷P1407 工资

    洛谷P1407 工资

    本题地址: http://www.luogu.org/problem/show?pid=1407

    题目描述

    有一家世界级大企业,他们经过调查,发现了一个奇特的现象,竟然在自己的公司里,有超过一半的雇员,他们的工资完全相同!
    公布了这项调查结果后,众多老板对于这一现象很感兴趣,他们发现在自己的公司也存在有这样的现象——超过一半的雇员工资都是x。老板们都很想知道这个x是多少,请你帮忙计算一下。

    输入输出格式

    输入格式:

    输入:(gold.in)
    第一行输入一个t,表示有t家公司找你帮忙判断。
    之后t行,第i行的第一个数字为Ai表示第i个公司的雇员数,之后Ai个数字表示雇员的工资。

    输出格式:

    输出:(gold.out)
    共输出t行,第i行表示第i个公司的x。(如题意表述)

    输入输出样例

    输入样例#1:

    2
    5 0 2 0 2 2
    4 2 3 3 3

    输出样例#1:

    2
    3

    说明

    数据范围:
    t<=10,且员工的资产是10^9以内的非负整数。
    70%数据满足Ai<=1000
    100% 数据满足Ai<=1000000内存限制 1MB

    【思路】

       因为有内存限制所以用map会爆内存。

       这个题目的突破口在于求的是出现次数超过一半的数字x(而非飞翔同学说的求众数),所以x一定会有连续,我们只需要求出连续长度最长的数字即可。

    【代码】

     1 #include<iostream>
     2 #include<map>
     3 using namespace std;
     4 
     5 int n;
     6 
     7 int main() {
     8     ios::sync_with_stdio(false);
     9     int T; cin>>T;
    10     while(T--) {
    11         int x,a=0,A;
    12         cin>>A;
    13         bool f=false;
    14         for(int i=0;i<A;i++) {
    15             int u; cin>>u;
    16             if(a==0) x=u;
    17             if(x==u) a++; else a--;
    18         }
    19         cout<<x<<"
    ";
    20     }
    21     return 0;
    22 }
  • 相关阅读:
    udhcpd配置及使用
    射频全网通笔记(附全球频段划分及主要运营商对应表)
    Source Insight教程
    关于学习
    一次OGG ERROR OGG-01091 Unable to open file "./dirdat/th079817" 的问题解决
    mysql建立的一个自动更新组织树案案例
    1055
    了解一个A*数据库的数据
    mysql安装
    通过CONTRAB 执行脚本进行监控
  • 原文地址:https://www.cnblogs.com/lidaxin/p/4884255.html
Copyright © 2011-2022 走看看