各位,朋友,请帮我看看一下这个代码哪处导致了输出为0 与 Time Limit Exceeded.
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n, k;
cin >> n >> k;
int sort_num[n];
memset(sort_num, 0, sizeof(sort_num));
for(int i = 0; i < n; i++)
{
cin >> sort_num[i];
}
for(int i = n; i > 1; i--)
{
for(int j = 1; j < i; j++)
{
if(sort_num[j] > sort_num[j + 1])
{
swap(sort_num[j], sort_num[j + 1]);
}
}
}
cout << sort_num[k];
return 0;
}
测试数据如下:
输入 输出
5 1 2
4 3 2 1 5
感谢!
有题目吗,把题目截图给我一下,我帮你做
还有如果需要排序的话,用C++已经写好的函数就行啦。
格式sort(起始元素,结束元素)//从小到大把数组排一遍序
当然冒泡排序法也可以,你把题目发一下,我帮你看看,改一改
下面是代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,k;
cin>>n>>k;
int a[n+1];
for(int i=1;i<=n;i++) cin>>a[i];
sort(a+1,a+n+1);
cout<<a[k]<<endl;
}