0
已解决
邓涵睿
中级天翼
中级天翼
#include<iostream>
using namespace std;
int n,t;
long long a[100000005];
int main(){
int k;
cin>>n>>k;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=n-1;i++){
for(int j=1;j<=n-i;j++){
if(i==a[k]){
t+=i;
}
}
}
cout<<t;
return 0;
}
快来人啊
邓涵睿在2020-11-04 16:23:41追加了内容
我要加豆了!
0
已采纳
李显晨
中级启示者
中级启示者
这题你把它复杂化了
你可以先给它从小到大排序,然后再直接输出a[k]
for(int i=1;i<=n-1;i++){
bool f=0;
for(int j=1;j<=n-i;j++){
if(a[j]>a[j+1]){
swap(a[j],a[j+1]);
f=1;
}
}
if(f==0) break;
}
cout<<a[k];
核心代码,选择排序优化
望采纳,谢谢!!!
李显晨在2020-11-04 17:03:48追加了内容
不小心写错了,是冒泡优化
0
0