提交时间:2023-12-01 13:27:20

运行 ID: 113119

#include <bits/stdc++.h> using namespace std; const int N=1e5+10; const int INF=0x3f3f3f3f; int n,k,b[N]; struct node{ int sum,s; }a[N]; bool cmp(node x,node y) { return x.sum<y.sum; } int main() { cin>>n>>k; for(int i=1;i<=n;i++) { cin>>a[i].sum; b[i]=a[i].sum; a[i].s = i; } if(n>=99999) { sort(a+1,a+n+1,cmp); cout<<a[k].s; return 0; } bool ok; for(int i=n;i>1;i--) { ok=1; for(int j=1;j<i;j++) { if(a[j].sum>a[j+1].sum) { swap(a[j].sum,a[j+1].sum); ok=0; } } if(ok) { break; } } for(int i=1;i<=n;i++) { if(a[k].sum==b[i]) { cout<<i; break; } } return 0; }