justinjia @ 2020-08-27 08:00:55
#include"stdio.h"
void bubblesort(int a[],int end){//冒泡排序(我使用比较熟练的一种排序算法)
for(int i=0;i<=end;i++)
for(int j=end;j>i;j--)
if(a[j-1]>a[j]){
int t=a[j];
a[j]=a[j-1];
a[j-1]=t;
}
}
int main(void){
int n,k;
scanf("%d%d",&n,&k);
int a[n];
for(int i=0;i<n;i++)
scanf("%d",&a[i]);
bubblesort(a,n-1);
printf("%d",a[k]);
return 0;
}
我用的冒泡排序时间复杂度太高吗?
by Chinshyo @ 2020-08-27 08:24:50
@Ymw123 其实这里加一个这行语句:
ios::sync_with_stdio(false);
不是更快吗。还不用引用函数了,直接用cin和cout
by FutureThx @ 2020-08-27 08:27:59
@远刃YR彡 关闭同步流不会比快读快
by Chinshyo @ 2020-08-27 08:30:45
@Ymw123 可是我担心NOI不提供快读模板qwq
by xwy1113 @ 2020-08-27 08:33:07
@justinjia 用nth_element
by FutureThx @ 2020-08-27 08:33:17
@远刃YR彡 有点要快对线的感觉…… emm……模板自己背掉或者理解透彻考场上不就随便用了吗?
by Chinshyo @ 2020-08-27 08:35:06
@Ymw123 啊这,我..
by Chinshyo @ 2020-08-27 08:36:08
@Ymw123 估值要到多少分才可以绿名啊qwq
by FutureThx @ 2020-08-27 08:40:30
@远刃YR彡
-1 棕色 作弊者
0 灰色 见习用户 即咕值<100的用户
1 蓝色 普通用户 即咕值在[100,119]的用户
2 绿色 算法爱好者 即咕值在[120,169]的用户
3 橙色 刷题健将 即咕值在[170,229]的用户
4 红色 虐题狂魔 即咕值>229的用户
详见帮助中心
by 一只小H @ 2020-08-27 09:41:43
@justinjia 好像有好几种,根据不同情况选择
by justinjia @ 2020-08-27 12:50:17
@远刃YR彡 我突然想起来C++的某个头文件(可我忘了是哪个,好像是algorithm)里好像有一个叫做qsort的函数,快排似乎可以用它。