Triplets monos P57540


Statement
 

pdf   zip   main.cc

thehtml

Donats tres naturals x, y i z, direm que formen un triplet mono si, a cada posició dels dígits, un dels dígits és igual a la suma dels altres dos. Per exemple,

12145
80246
72301

és un triplet mono, perquè 5 + 1 = 6, 4 + 0 = 4, 1 + 2 = 3, 2 + 0 = 2, i 1 + 7 = 8.

Escriviu una funció recursiva

bool es_mono(int x, int y, int z);

que retorni true si i només si el triplet format pels tres nombres és mono. Tingueu en compte que els tres nombres poden tenir un nombre de dígits diferent. En aquest cas, cal suposar que comencen amb tants zeros com calgui per igualar les tres longituds. Per exemple,

42
43
 1

és un triplet mono, però

 2
 3
50

no ho és.

Precondició

Els tres nombres estan entre 1 i 108.

Observació Només cal enviar el procediment demanat; el programa principal serà ignorat.

Public test cases
  • Input/Output

    es_mono(12145, 80246, 72301) → 1
    es_mono(42, 43, 1) → 1
    es_mono(2, 3, 50) → 0
  • Information
    Author
    Salvador Roura
    Language
    Catalan
    Official solutions
    C++
    User solutions
    C++