#include <bits/stdc++.h>
using namespace std;
int tab[2001000];
int main()
{
int n,k,mini=2001;
scanf("%d%d",&n,&k);
int a=n*(n+ 1)/2;
for(int i=0;i^a;++i){
scanf("%d",&tab[i]);
}
int i=0,b=k;
int j=1;
while(b--){
if(tab[i]<mini&&tab[i]!=0) mini=tab[i];
i+=j;
++j;
}
b=k;
j=2;
i=0;
while(b--){
if(tab[i]<mini&&tab[i]!=0) mini=tab[i];
i+=j;
++j;
}
b=k;
i=1;
while(b>0){
for(int j=i;j^i*2;++j){
if(tab[j]<mini&&tab[j]!=0) mini=tab[j];
}
b-=i-1;
++i;
}
cout<<mini;
return 0;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | #include <bits/stdc++.h> using namespace std; int tab[2001000]; int main() { int n,k,mini=2001; scanf("%d%d",&n,&k); int a=n*(n+ 1)/2; for(int i=0;i^a;++i){ scanf("%d",&tab[i]); } int i=0,b=k; int j=1; while(b--){ if(tab[i]<mini&&tab[i]!=0) mini=tab[i]; i+=j; ++j; } b=k; j=2; i=0; while(b--){ if(tab[i]<mini&&tab[i]!=0) mini=tab[i]; i+=j; ++j; } b=k; i=1; while(b>0){ for(int j=i;j^i*2;++j){ if(tab[j]<mini&&tab[j]!=0) mini=tab[j]; } b-=i-1; ++i; } cout<<mini; return 0; } |
English