zoukankan      html  css  js  c++  java
  • 【牛客-16643】统计数字(简单排序)

    统计数字


    题目描述:

    某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*109)。已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。
    输入描述:
    第1行是整数n,表示自然数的个数。
    第2~n+1行每行一个自然数。输出描述:输出m行(m为n个自然数中不相同数的个数),按照自然数从小到大的顺序输出。每行输出两个整数,分别是自然数和该数出现的次数,其间用一个空格隔开。

    输入
    8
    2
    4
    2
    4
    5
    100
    2
    100
    输出
    2 3
    4 2
    5 1
    100 2

    备注:

    40%的数据满足:1 ≤ n ≤ 1000
    80%的数据满足:1 ≤ n ≤ 50000
    100%的数据满足:1 ≤ n ≤ 200000,每个数均不超过1500000000(1.5*10^9)

    题目链接:

    https://ac.nowcoder.com/acm/problem/16643(先注册)

    一开始想着用a[10005]存自然数,b[a[i]]存每个自然数的个数,但是总是不能通过,就换成map<ll,ll>了

    AC代码

    #include <iostream>
    #include <cstdio>
    #include <fstream>
    #include <algorithm>
    #include <cmath>
    #include <deque>
    #include <vector>
    #include <queue>
    #include <string>
    #include <cstring>
    #include <map>
    #include <stack>
    #include <set>
    #include <numeric>
    const int INF=0x3f3f3f;//无穷大
    using namespace std;
    typedef long long ll;
    map<ll, ll>num;
    int main()
    {
        ll n;
        cin >>n;
        while(n--)
        {
            ll x;
            cin >>x;
            num[x]++;
        }
        for(map<ll,ll>::iterator it=num.begin(); it!=num.end(); it++)//遍历map
            cout<<it->first<< " " <<it->second << endl;
        return 0;
    }
  • 相关阅读:
    Struts2+Spring2+Hibernate3 web应用示例(一)
    第二版序言
    Struts2+Spring2+Hibernate3 web应用示例(四)
    Struts2+Spring2+Hibernate3 web应用示例(六)
    终于轻松了
    Struts2+Spring2+Hibernate3 web应用示例(三)
    Dojo实用API
    AJAX实例入门
    JeffChen » C语言常用宏定义技巧
    FUZZ测试方法介绍
  • 原文地址:https://www.cnblogs.com/sky-stars/p/10951823.html
Copyright © 2011-2022 走看看