F008A. Dates badèniques

En el planeta Badènia s’usa un sistema de dates diferent al nostre.
Encara que una data s’identifica com en el nostre cas amb un dia, un mes
i un any, no coneixem ni quants mesos té un any, ni quants dies té cada
mes. Però això no hauria de ser cap impediment perquè resolgueu aquest
problema:

Donada una seqüència de dates badèniques, escriviu la primera que
estigui compresa entre la seva anterior i la seva posterior dintre de la
seqüència. Si no n’hi ha cap, indiqueu-ho.

Per exemple, |32/15/2007| està entre |23/2/1981| i |1/1/10234|, ja que
és més gran que la primera i més petita que la segona. Com un altre
exemple, |10/10/2| està entre |100/10/2| i |100/1/2|, perquè és més
petita que la primera i més gran que la segona.

Utilitzant la definició

        struct Data {
            int dia, mes, any;
        };

el vostre programa ha d’incloure i fer servir la funció

        bool menor(const Data& d1, const Data& d2);

que retorna cert si i només si la data |d1| és estrictament menor que la
data |d2|.

Entrada

L’entrada comença amb un natural n ≥ 3. Segueixen n dates badèniques
diferents, cadascuna descrita amb tres naturals separts amb una barra,
en aquest ordre: dia, mes, i any.

Sortida

Escriviu la primera data que estigui compresa entre la data anterior a
ella i la data posterior a ella dins de la seqüència. Si no n’hi ha cap,
indiqueu-ho. Seguiu el format dels exemples.

Observació

No podeu usar vectors per resoldre aquest problema.

Informació del problema

Autoria: Professorat de P1

Generació: 2026-01-25T11:37:25.005Z

© Jutge.org, 2006–2026.
https://jutge.org
