题目背景
警告:数据可能存在加强
题目描述
某次科研调查时得到了nn个自然数,每个数均不超过1500000000(1.5 \times ^)(1.5× )。已知不相同的数不超过1000010000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。 输入输出格式
输入格式:
共n+1n+1行。 第一行是整数nn,表示自然数的个数; 第22至n+1n+1每行一个自然数。 输出格式:
共mm行(mm为nn个自然数中不相同数的个数),按照自然数从小到大的顺序输出。 每行输出22个整数,分别是自然数和该数出现的次数,其间用一个空格隔开。 输入输出样例
输入样例#: 输出样例#: 说明
%的数据满足:≤n≤
%的数据满足:≤n≤
%的数据满足:≤n≤,每个数均不超过1500000000(1.5×)

首先,要注意这道题的数据范围
其次,个人认为本题解是最适合萌新的
看别的大佬都用 map 或 set 之类的怪东西,个人认为一个一维数组就完全可以AC掉这道题
我感觉我的代码应该算快的了用了321ms 1448KB

先用一个快排

然后进行以下处理(解释都在核心代码里了~QAQ~)

for(int i=;i<=n;i++)
{
int sum1=;//看看有几个数是相同的
for(int j=i;j<=n;j++)//从i一直找
{
if(s[j]==s[j+])//如果相同
{
sum1++;//计数器加一
}
else
{
break;//不然就直接退出,避免出现另外两个数相同的情况
}
}
cout<<s[i]<<" "<<sum1+<<endl;//输出
i+=sum1;//相当于将一样的数算在一起,然后直接到下一个不相等的数的位置
}

以下是代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<map>
#include<algorithm> using namespace std; int s[]; int main()
{
int n;
int maxn=-;
cin>>n;
for(int i=;i<=n;i++)
{
cin>>s[i];
}
sort(s+,s+n+);
for(int i=;i<=n;i++)
{
int sum1=;
//cout<<s[i]<<endl;
for(int j=i;j<=n;j++)
{
if(s[j]==s[j+])
{
sum1++;
}
else
{
break;
}
}
cout<<s[i]<<" "<<sum1+<<endl;
i+=sum1;
}
return ;
}

洛谷 P1097 【统计数字】 题解的更多相关文章

  1. 洛谷 P1097 统计数字

    P1097 统计数字 题目描述 某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*10^9).已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自 ...

  2. [NOIP2007] 提高组 洛谷P1097 统计数字

    题目描述 某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*10^9).已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出 ...

  3. 洛谷—— P1097 统计数字

    https://www.luogu.org/problem/show?pid=1097 题目描述 某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*10^9).已知不相同的数 ...

  4. 洛谷 1097 统计数字(NOIp2007提高组T1)

    [题解] 排个序然后扫一遍进行统计即可. #include<cstdio> #include<algorithm> #include<cstring> #defin ...

  5. 洛谷P1577 切绳子题解

    洛谷P1577 切绳子题解 题目描述 有N条绳子,它们的长度分别为Li.如果从它们中切割出K条长度相同的 绳子,这K条绳子每条最长能有多长?答案保留到小数点后2位(直接舍掉2为后的小数). 输入输出格 ...

  6. 洛谷P2507 [SCOI2008]配对 题解(dp+贪心)

    洛谷P2507 [SCOI2008]配对 题解(dp+贪心) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1299251 链接题目地址:洛谷P2507 [S ...

  7. 洛谷P2832 行路难 分析+题解代码【玄学最短路】

    洛谷P2832 行路难 分析+题解代码[玄学最短路] 题目背景: 小X来到了山区,领略山林之乐.在他乐以忘忧之时,他突然发现,开学迫在眉睫 题目描述: 山区有n座山.山之间有m条羊肠小道,每条连接两座 ...

  8. 每日一练之排序算法(P1097 统计数字)

    某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5×10^9).已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果. ...

  9. 【洛谷P3960】列队题解

    [洛谷P3960]列队题解 题目链接 题意: Sylvia 是一个热爱学习的女孩子. 前段时间,Sylvia 参加了学校的军训.众所周知,军训的时候需要站方阵. Sylvia 所在的方阵中有 n×m ...

  10. 洛谷P2312 解方程题解

    洛谷P2312 解方程题解 题目描述 已知多项式方程: \[a_0+a_1x+a_2x^2+\cdots+a_nx^n=0\] 求这个方程在 \([1,m]\) 内的整数解(\(n\) 和 \(m\) ...

随机推荐

  1. SpringBoot @EnableAutoConfiguration exclude属性失效

    本文链接:https://blog.csdn.net/yuan_ren_sheng/article/details/81516779 在学习SpringBoot的时候,入了不少的坑.今天学习@Spri ...

  2. 【SQL】各取所需 | SQL JOIN连接查询各种用法总结

    前面 在实际应用中,大多的查询都是需要多表连接查询的,但很多初学SQL的小伙伴总对各种JOIN有些迷糊.回想一下,初期很长一段时间,我常用的似乎也就是等值连接 WHERE 后面加等号,对各种JOIN也 ...

  3. jquery实现简单定时轮播图

    JS $(document).ready(function(){ var index = 0; //刚开始设置一个index,index为图片的索引值 $(".pictureDemo img ...

  4. Vue学习之监听methods、watch及computed比较小结(十一)

    一.三者之间的对比: 1.methods方法表示一个具体的操作,主要书写业务逻辑: 2.watch:一个对象,键是需要观察的表达式,值是对应回调函数.主要用来监听某些特定数据的变化,从而进行某些具体业 ...

  5. Cheat Engine 创建线程

    打开游戏 扫描出阳光地址 打开自动汇编 激活测试 每次激活,阳光都会自增

  6. Golang报错:Cannot convert expression of type interface{} to type []byte

    在使用golang实现后端登录逻辑的时候,碰到下面的问题:Cannot convert expression of type interface{} to type []byte 首先介绍下问题出现的 ...

  7. java web的转发与重定向

    java web的转发与重定向 原创 2012年12月15日 11:51:39 19312 转发和重定向的区别 一.使用方法 转发:request.getRequestDispatcher(" ...

  8. MySQL-长事务详解

    前言:  『入门MySQL』系列文章已经完结,今后我的文章还是会以MySQL为主,主要记录下近期工作及学习遇到的场景或者自己的感悟想法,可能后续的文章不是那么连贯,但还是希望大家多多支持.言归正传,本 ...

  9. gitlab安装配置

    一.安装依赖服务 yum install curl policycoreutils-python openssh-server postfix -y systemctl start postfix s ...

  10. JQuery学习笔记之属性与样式

    .attr()与.removeAttr() attr()有4个表达式 attr(传入属性名):获取属性的值 attr(属性名, 属性值):设置属性的值 attr(属性名,函数值):设置属性的函数值 a ...