概述
题目描述
输入 nn(n<5000000 且 n 为奇数) 个数字
a
i
(
0
<
a
i
<
1
0
9
)
a_i(0<a_i<10^9)
ai(0<ai<109),输出这些数字的第 kk 小的数。最小的数是第 0 小。
请尽量不要使用 nth_element
来写本题,因为本题的重点在于练习分治算法。
输入格式
无
输出格式
无
输入输出样例
输入
5 1
4 3 2 1 5
输出
2
请尽量不要使用 nth_element
来写本题
nth_element
来写本题#include<bits/stdc++.h>
using namespace std;
int x[5000005],k;
int main()
{
int n;
scanf("%d%d",&n,&k);
for(int i=0;i<n;i++)
scanf("%d",&x[i]);
nth_element(x,x+k,x+n);//简短又高效
printf("%d",x[k]);
}
最后
以上就是舒适鸡翅为你收集整理的P1923 【深基9.例4】求第 k 小的数——卑鄙的nth_element(x,x+k,x+n);//简短又高效请尽量不要使用 nth_element 来写本题的全部内容,希望文章能够帮你解决P1923 【深基9.例4】求第 k 小的数——卑鄙的nth_element(x,x+k,x+n);//简短又高效请尽量不要使用 nth_element 来写本题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复