zoukankan      html  css  js  c++  java
  • 【BZOJ2456】mode 神奇的卡内存题

    以后把题解放在前面,估计没人看题解先看题。。。

    内存1M,4个int(其实对内存的概念十分模糊),众数即为出现次数最多的数,可以用抵消的思想(但是众数不是可以是一大坨么。。。)

     1 #include <cstdio>
     2 using namespace std;
     3 int now,n,a,t;
     4 int main()
     5 {
     6     scanf("%d",&n);
     7     for (int i=1;i<=n;i++)
     8     {
     9         scanf("%d",&a);
    10         if (now==a) t++;
    11         else
    12         {
    13             t--;
    14             if (t<=0) t=1,now=a;
    15         }
    16     } 
    17     printf("%d
    ",now);
    18     return 0;
    19 }
    View Code

    Description

    给你一个n个数的数列,其中某个数出现了超过n div 2次即众数,请你找出那个数。

    Input

    第1行一个正整数n。
    第2行n个正整数用空格隔开。

    Output

        一行一个正整数表示那个众数。

    Sample Input

    5
    3 2 3 1 3

    Sample Output

    3

    HINT

    100%的数据,n<=500000,数列中每个数<=maxlongint。



    zju2132 The Most Frequent Number

    Source

    —Anime Otaku Save The World.
  • 相关阅读:
    2019/10/9 CSP-S 模拟测
    简单的面向对象
    魔术变量
    函数
    全局变量
    超级全局变量
    for循环
    while循环
    php数组排序
    python打造XslGenerator
  • 原文地址:https://www.cnblogs.com/DMoon/p/5299522.html
Copyright © 2011-2022 走看看