问题 C: 排队I(点击)

时间限制: 1 Sec  内存限制: 128 MB

                                                                      提交: 391  解决: 49

                                                        [提交] [状态] [讨论版] [命题人:admin]

题目描述

楠楠最近在研究南海区5年级英语成绩的排序有关算法,如果数列中的数是从小到大排列的,则称有序的。研究中对于没有排好序的数列,要统计每个数前面有多少比它大的数字。比如有5个数的数列:   3  1  4  2  5,则第1个数3之前有0个数比它大;第2个数1之前有1个数比它大;第3个数4之前有0个数比它大;第4个数2之前有2个数比它大;第5个数5之前有0个数比它大。由于数列很长,楠楠求你编程来统计。

输入

第一行1个整数N,表示数列有N个整数。

第二行有N个非负整数,每个数表示一个分数,范围是[0…120]。

输出

一行N个非负整数(每个非负整数后面有一个空格),第i个数表示原数列中第i位前有多少比第i位数大。

样例输入

复制样例数据

5
3 1 4 2 5

样例输出

0 1 0 2 0

提示

8个的数据: N的范围是[1…1000],每个数范围是[0…120]

2个的数据:N的范围是[1…1,00,000],每个数范围是[0…120]

之前做过一次和这个几乎一样的题目 但是之前的题目数据没有那么大 所以未出现tle 也就没考虑用神么方法优化一下 比赛完也没想到好的思路 看了博客 学到种方法 可惜我把数组大小开反了 也没提示运行错误 所以也没注意是数组问题 最后从头读了下代码才发现

思路:

记录输入的数m 每次输入一个数就用 for去从m+1 开始遍历到120

如果m+1这个值 超过0个就把他的数目加入count中

代码:

#include<stdio.h>
int main()
{
int n,i,m,j;
int a[125]={0},count[100005]; //数组count用来记录第i个值前面比他大的数目
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&m); //先输入一个值 接着跑for循环
a[m]++;
count[i]=0;
for(j=m+1;j<=120;j++){ //从m+1这个数开始 判断这个数的数目是否多余0个
if(a[j]!=0){ //如果多于 说明这个数之前出现了几次
count[i]+=a[j];
}
}
}
for(i=0;i<n;i++){
printf("%d ",count[i]); //对每个i 输出相应的数目count[i]
}
printf("\n");
return 0;
}

总结:

1.代码最后不加\n(换行) 也会判对

2.在输入后面可以做一些事 就像打表一样 缩短时间

3.根据数据大小 先考虑会不会tle

感谢:点击访问他的博客

最新文章

  1. (三)Spark-Hadoop集群搭建-Java&amp;Python版Spark
  2. 【AspNetCore】【WebApi】扩展Webapi中的RouteConstraint中,让DateTime类型,支持时间格式化(DateTimeFormat)
  3. ASP.NET Core 1.0到底是什么?
  4. Python::OS 模块 -- 进程管理
  5. POJ1191 棋盘分割(DP)
  6. 第25章 项目6:使用CGI进行远程编辑
  7. HDOJ(HDU) 1587 Flowers(水、、)
  8. .NET缓存框架CacheManager---1、CacheManager的介绍
  9. 【前端】用jQuery实现瀑布流效果
  10. 九九乘法表实现---基于python
  11. 实验6 shell程序设计一(1)
  12. yarn web ui 参数详解
  13. Flink集群部署
  14. springboot中配置了拦截器后,拦截器无效的解决方案之一
  15. docker-machine on azure
  16. Windows下如何更新 CodeBlocks 中的 MinGW 使其支持新版本 C++
  17. 三、K8S成功
  18. 2018.4.3 配置AD服务器步骤
  19. 33. 完全卸载oracle11g步骤
  20. Codeforces 749E Gosha is hunting 二分+DP

热门文章

  1. apache slowloris mod_antiloris for Apache httpd 2.2 / 2.4
  2. 接上一篇:vue零基础入门记录
  3. MySQL(8)— 权限管理和备份
  4. 仙人掌图判定及求直径HDU3594 BZOJ1023
  5. [wordpress使用]001_环境安装
  6. 【补充说明】Gauge框架在JS中的简单应用
  7. 网络编程TCP/IP详解
  8. DM7的聚簇索引和非聚簇索引(cluster属性)
  9. Rocket - decode - SimplifyDC
  10. Shell 脚本(五) Shell 工具 及 企业面试题