Nombres creixents-decreixents P68136


Statement
 

pdf   zip

Es diu que un nombre natural @n@ és creixent-decreixent en base @b@ si, escrit en base @b@, la seqüència dels seus dígits en posicions senars (des de l’esquerra) és estrictament creixent i la seqüència dels seus dígits en posicions parells (també des de l’esquerra) és estrictament decreixent. Per exemple, el naturals @162534@ i @1625344@ són creixent-decreixent en base @10@, però ni @1625343@ ni @1625364@ ho són.

Escriviu una funció @bool es_creixent_decreixent(int b, int n)@ que indiqui si el nombre natu­ral @n@ és creixent-decreixent en base @b@, on @b@ és un natural més gran o igual que @2@. Aquesta funció (ni cap acció o funció que aquesta cridi) no pot usar vectors o similars i no pot fer servir cap instrucció iterativa (@while@ o @for@).

Escriviu un programa principal que llegeixi parells de naturals @b@ i @n@, on @b@ és més gran o igual que @2@, i per cadascun cridi la funció @es_creixent_decreixent(b, n)@ i escrigui YES o NO segons sigui el resultat, un per línia.

Public test cases
  • Input

    10 162534
    10 1625343
    10 1625364
    10 1625344
    10 22
    8 9850
    16 8391103
    14 28684515
    

    Output

    YES
    NO
    NO
    YES
    YES
    NO
    NO
    YES
    
  • Information
    Author
    Albert Atserias
    Language
    Catalan
    Official solutions
    C++
    User solutions
    C++ Python