Examen Laboratori 2015 X63833


Statement
 

pdf   zip   tar

html

Heu de fer una funció que, donats dos vectors X i Y, que representen un conjunt de punts en un espai bidimensional, i una distància màxima dist_max, torni cert si i només si no hi ha cap distància euclidiana entre dos punts del vector que sigui més gran que dist_max. La distància euclidiana (en un espai bidimensional) entre dos punts (xi, yi) i (xj,yj) és:

(xi − xj)2 + (yi − yj)2

Heu de programar una funció que es diu limit, que rep dos vectors d’enters i un enter, i torna un booleà. Tots dos vectors tenen la mateixa mida N > 0.

Per exemple, si tenim:

                                X <- c(3,4,5,2)
                                Y <- c(5,3,1,1)

això correspon als punts:

                                P1 = (3,5)
                                P2 = (4,3)
                                P3 = (5,1)
                                P4 = (2,1)

En aquest cas, la crida limit (X,Y,4) tornaria FALSE, ja que la distància entre els punts P1 i P2 és 4.47 > 4.

Si tenim:

                                X <- c(2,4,5,8,6)
                                Y <- c(3,4,4,6,3)

llavors la crida a limit (X,Y,7) tornarà TRUE, ja que la distància euclidiana més gran que hi ha és entre els punts P1 i P4, que és 6.7 ≤ 7.

Podeu fer vosaltres les funcions auxiliars que necessiteu. De l’R, només podeu fer servir la funció sqrt.

Observació

Al fitxer public.tar hi ha el fitxer enunciat.R que conté l’esquelet del programa. Fes-lo servir, però no modifiquis la part indicada. Aquest fitxer el pots fer servir també en l’entorn R.

Entrada

2 vectors v1 i v2 d’enters i un enter que és una distància màxima.

Sortida

TRUE si i només si no hi ha cap distància euclidiana entre dos punts del vector que sigui més gran que dist_max.

Public test cases
  • Input

    4
    4
    3 4 5 2
    5 3 1 1  
    

    Output

    FALSE 
    
  • Input

    7
    5
    2 4 5 8 6
    3 4 4 6 3
    
    

    Output

    TRUE 
    
  • Input

    0
    30
    1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 
    1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 
    

    Output

    TRUE 
    
  • Information
    Author
    Jaume Baixeries
    Language
    Catalan
    Official solutions
    R
    User solutions
    R