rendered paste body#include <iostream>
#include <stdio.h>
#include <math.h>
using namespace std;
void ordenacao(int n, double vetor[]){
int aux[n];
int posicao, valor, k, j;
posicao = 0;
valor = 0;
j = 0;
for(int i = 0; i < n; i++){
valor = vetor[i];
if(posicao == 0){
aux[posicao] = vetor[posicao];
posicao++;
}
else{
j = posicao-1;
if(valor < aux[j]){
k = posicao-1;
while(valor < aux[k] && k>=0){
aux[k+1] = aux[k];
k--;
}
aux[k+1] = valor;
posicao++;
}
else{
k = posicao;
aux[k] = valor;
posicao++;
}
}
}
}
int main()
{
int satelite, radio;
scanf("%d", &satelite);
scanf("%d", &radio);
double grid[radio][2];
for(int x = 0; x < radio; x++){
for(int y = 0; y < 2; y++){
scanf("&d", &grid[x][y]);
}
}
int q = radio*(radio-1);
int distancias = q/2;
double dist[distancias];
int d = 0;
for(int r = 0; r < radio; r++){
int x = grid[r][0];
int y = grid[r][1];
int m = x*x + y*y;
dist[d] = sqrt(m);
d++;
}
ordenacao(distancias, dist);
double maior_distancia = 0;
for(int i = satelite; i < distancias; i++){
if(dist[i] > maior_distancia){
maior_distancia = dist[i];
}
}
cout << maior_distancia;
}