F017B. Barrejant racionals P75090


Statement
 

pdf   zip

html

Feu un programa que llegeixi dues seqüències ordenades amb n i m racionals a1, a2, …, an i b1, b2, …, bm, i que els escrigui ordenats però sense repetits.

El vostre programa ha d’utilitzar la definició

struct Racional { int num, den; };

per implementar una funció int comparador(const Racionala, const Racionalb); que retorni 0 si a = b, qualsevol enter positiu si a > b, i qualsevol enter negatiu si a < b.

Entrada

L’entrada conté un natural n ≥ 0, seguit d’una seqüència creixent amb n racionals, seguida d’un natural m ≥ 0, seguit d’una seqüència creixent amb m racionals. Tots els numeradors i denominadors són estrictament positius, i sense factors comuns. A més, són prou petits per evitar sobreiximents si feu els càlculs raonables que calen.

Sortida

Escriviu una línia per a cada racional de l’entrada, en ordre i sense repetits.

Observacions

  • Per comoditat, llegiu i guardeu les dues seqüència en un vector cadascuna.
  • Si useu el tipus double o el sort, sereu qualificats amb un zero.
Public test cases
  • Input

    9  1/5 1/5 1/3 1/1 8/3 3/1 3/1 4/1 4/1
    6  1/3 1/1 1/1 5/2 5/2 3/1
    

    Output

    1/5
    1/3
    1/1
    5/2
    8/3
    3/1
    4/1
    
  • Input

    2  8/9 8/9
    3  8/9 8/9 8/9
    

    Output

    8/9
    
  • Input

    0
    3  100/1 100/1 700/3
    

    Output

    100/1
    700/3
    
  • Information
    Author
    Professorat de P1
    Language
    Catalan
    Official solutions
    C++
    User solutions
    C++