Nombres entrepà V37339


Statement
 

pdf   zip   main.cc

Definim com a número entrepà un natural nn amb només dos dígits dd i ee diferents, que formen una seqüència de1e2ekdde_1e_2\cdots e_kd. És a dir, el digít dd és el primer i l’últim dígit de nn (és el pa), i el dígit ee està repetit k1k \geq 1 vegades entremig dels dos dígits dd (és l’embotit o el farciment). Per exemple, 121 és un número entrepà amb d=1d = 1, e=2e = 2, i k=1k = 1. El 4004 és un número entrepà amb d=4d = 4, e=0e = 0, i k=2k = 2.

Més exemples de números entrepà: 7227, 41114, 966669, 10001 i 535.
Exemples de números que no són entrepà: 9, 12, 113311, 7878, 1234, 9991, 1000.

Implementa una funció is_sandwich que rep un nombre natural i retorna true si és un número entrepà i false en cas contrari.

La capçalera de la funció ha de ser:

/**
 * @pre  n >= 0
 * @post retorna cert si n és un número entrepà, fals en cas contrari
 */
bool is_sandwich(int n);

Observació

Només cal enviar la funció demanada; el programa principal serà ignorat.

Sample session
is_sandwich(0) -> false
is_sandwich(11) -> false
is_sandwich(454) -> true
is_sandwich(123) -> false
is_sandwich(5665) -> true
is_sandwich(20001) -> false
is_sandwich(344443) -> true
Information
Author
PRO1
Language
Catalan
Other languages
English Spanish
Official solutions
C++
User solutions
C++