All pastes #1957257 Raw Edit

Untitled

public text v1 · immutable
#1957257 ·published 2010-10-08 00:13 UTC
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;

}