sdut 数据结构实验之排序三:bucket sort

一开始这种做法超时:

#include<stdio.h>int b[5000000],a[5000000],n,ans;
void merge_sort(int *a,int *b,int x,int  y)
{if(y-x>1){int m=x+(y-x)/2;//中间点的坐标int p=x,q=m,i=x;merge_sort(a,b,x,m);merge_sort(a,b,m,y);while(p<=m||q<y){if(q>=y||(p<m&&a[p]<=a[q]))b[i++]=a[p++];//从左半数组复 制到临时空间else b[i++]=a[q++];// 从右半 数组复制到临时空间}for(i=x;i<y;i++)a[i]=b[i];}
}
int main()
{scanf("%d",&n);for(int i=0;i<n;i++)scanf("%d",&a[i]);int mid=n/2;merge_sort(a,b,0,n);for(int i=0;i<n;i++){ans=1;for(int j=i+1;j<n;j++){if(a[j]>a[i])break;ans++;i=j;}printf("%d %d\n",a[i],ans);}return 0;
}

AC:

#include<stdio.h>
#include<string.h>
int main()
{int i,j,n,m,k,t,a[101];scanf("%d",&n);memset(a,0,sizeof(a));for(i=0;i<n;i++){scanf("%d",&m);if(m>=100)a[100]++;elsea[m]++;}for(i=0;i<101;i++)if(a[i]!=0)printf("%d %d\n",i,a[i]);
}


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/510296.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Caffe训练源码基本流程

苏的专栏 致力于学习计算机视觉、模式识别、机器学习、深度学习相关技术&#xff1a;&#xff1a;&#xff1a;&#xff1a;希望结识更多同道中人。 QQ&#xff1a;2816568984 微信&#xff1a;Suc1011 目录视图 摘要视图 订阅 【活动】2017 CSDN博客专栏评选 【评论送书】…

fatal error: GL/glew.h: 没有那个文件或目录

搜索libglew的版本 #apt-cache search glew libglew-dbg - OpenGL Extension Wrangler (debugging symbols) libglew-dev - OpenGL Extension Wrangler - development environment libglew1.13 - OpenGL Extension Wrangler - runtime environment libglewmx-dbg - OpenGL E…

运行cudasift

文件中有cmakelist.txt 运行命令 cmake . 就会生成makefile type: make 出现错误&#xff1a; /usr/bin/ld: 找不到 -lopencv_dep_cudart 在cmake 时候用一下指令&#xff1a; cmake -D CUDA_USE_STATIC_CUDA_RUNTIMEOFF . make的时候可能会出现以下错误 make[2]: …

电脑DNS修复

首先在dos窗口下输入以下命令&#xff1a; ipconfig/displaydns 可以看到当前的缓存的所有DNS记录&#xff1a; 然后&#xff1a; ipconfig/flushdns 刷新当前的DNS

数据结构实验之排序七:选课名单(卡内存的一道题。。坑)

RE。。。 带更正 #include<iostream> #include<algorithm> using namespace std; #include<cstdio> #include<cstring> struct people {char name[100];int sum_class;int cl[2005]; }a[40000],b[40000]; int cmp(people a,people b) {char t[100],l[…

/usr/bin/ld: 找不到 -lopencv_dep_cudart

make出现/usr/bin/ld: 找不到 -lopencv_dep_cudart错误时候 我们在cmake时候加上参数 cmake -D CUDA_USE_STATIC_CUDA_RUNTIMEOFF .

ubuntu16.04下安装opencv3.2版本

1、下载OpenCV的源码 OpenCV官网上有linux版本的源码包可以下载&#xff0c;不过最好是从git上下载&#xff0c;这样可以保证下载得到的是最新的代码&#xff1a;1 wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.2.0.zip 2 unzip opencv.zip 2、编译安装…

数据结构实验之栈六:下一较大值(二)

#include <bits/stdc.h> #include <iostream> using namespace std; struct node {int data;int next;//记录下一个元素死亡值int pos;//用来记录每个元素的位置*/ } a[100001],val[100000]; int main() {int t;while(~scanf("%d",&t)){int l0;while…

双系统安装ubuntu后没有windows启动项

打开terminal&#xff0c;sudo update-grub 如果看到windows的选项的话&#xff0c;下次重启就有了

ubunut安装分区建议

如果50g安装ubuntu 分为4个区 / :根目录区相当于windows 的C盘 我建议分20G swap:交换空间我建议分2G boot:我建议分200M home:把剩下的都分给home目录。

strchr函数的用法

【FROM MSDN && 百科】 原型&#xff1a; char *strchr(const char *s,char c); #include<string.h> 查找字符串s中首次出现字符c的位置,返回首次出现c的位置的指针&#xff0c;如果s中不存在c则返回NULL。 //#define FIRST_DEMO #define SECOND_DEMO #ifdef F…

Cross-Scale Cost Aggregation for Stereo Matching

摘要&#xff1a; 人类处理立体通信跨越多个尺度。然而&#xff0c;这种生物灵感就是忽略了最先进的成本汇总方法密集的立体声通信。在本文中&#xff0c;一个通用的提出跨规模成本汇总框架允许成本汇总中的多尺度互动。我们首先从统一优化中重新构建成本汇总透视和显示不同的…

strchr与strstr函数

在C语言中 strchr 和 strstr函数都被包含在<string.h>头文件中&#xff0c;也就是要调用它们时要在程序前面包含<string.h>头文件&#xff0c;也就是写这个语句&#xff1a;#include<string.h> strchr函数原型&#xff1a;char * strchr(char * str, int ch)…

Python-OpenCV设置摄像头分辨率

最近玩OpenCV用到一个双目摄像头&#xff0c;需要调整分辨率为1280480&#xff0c;研究了一下官方API&#xff0c;找到了设置方法&#xff0c;记录一下&#xff0c;以防忘记 import cv2 cap cv2.VideoCapture(0) cap.set(cv2.cv.CV_CAP_PROP_FRAME_WIDTH,1280) ca…

C/C++中字符串与数字相互转换

数字转字符串&#xff1a; 用C的streanstream: #include <sstream> #Include <string> string num2str(double i) { stringstream ss; ss << i; return ss.str(); } 字符串转数字&#xff1a; int str2num(string s) { int num; stringstream ss(s); ss>&…

IplImage* cvmat* mat 释放

IplImage* c_left; cvReleaseImage(&c_left); cvmat* img1r; cvReleaseMat(&img1r); mat img2; img2.release();

C语言fread函数了解

fread()函数---- Reads data from a stream. #include<stdio.h> size_t fread( void *buffer, size_t size, size_t count,FILE *stream ); 从一个文件流中读数据,读取count个元素,每个元素size字节.如果调用成功返回count.如果调用成功则实际读取size*count字节 buffer…

Chipscope信号无法找到的解决方案

&#xfeff;为了调试逻辑,现在很少再将FPGA中的信号引出,通过示波器或者逻辑分析仪来观察,更多的是在工程中生成stp或者cdc文件,通过signalTAP或者chipscope这两个工具来调试. 但我们发现,有时候在chipscope中很难找到你预期的信号,这往往是被综合器优化掉了,或者更改了信号名…

关于python 和C++使用cv画矩形并填充颜色同时填充文字

python: font cv2.FONT_HERSHEY_SIMPLEX # 使用默认字体 cv2.rectangle(im, (10, 10), (110, 110), (0, 0, 255), thickness2) # cv2.floodFill() cv2.rectangle(im, (113), int(110)), (int(300), int(135), …

C语言之strstr函数

FROM MSDN && 百科】 原型&#xff1a;char *strstr(const char *str1, const char *str2); #include<string.h> 找出str2字符串在str1字符串中第一次出现的位置&#xff08;不包括str2的串结束符&#xff09;。返回该位置的指针&#xff0c;如找不到&#xff0c…