Rezolvare PBinfo #2292

Decorative Icon Problema: Nevricos / 2292

Decorative IconAutor: Deivid

Se consideră un șir S format din N cifre nenule.

O secvență a șirului S este o succesiune de cifre din S care apar pe poziții consecutive. Un număr X asociat unei secvențe din S este numărul în baza 10 care se formează cu toate cifrele din secvența respectivă, în ordinea în care apar în aceasta.

Un subșir al șirului S este o succesiune de cifre din S care apar în S pe pozițiile p 1 , p 2 , … , p k astfel încât p 1 < p 2 < … < p k și k <= N . Un număr X asociat unui subșir al lui S este numărul în baza 10 care se formează cu toate cifrele din subșirul respectiv, în ordinea în care apar în acesta.

Un număr X se numește nevricos dacă este egal cu triplul produsului cifrelor lui X.

Cerința

a. Dându-se un șir S de cifre nenule, să se determine câte dintre secvențele din S au numere asociate nevricoase.
b. Dându-se un șir S de cifre nenule, să se determine câte dintre subșirurile lui S au numere asociate nevricoase.

Date de intrare

Fișierul de intrare nevricos.in conține pe prima linie șirul S de cifre nenule.

Date de ieșire

Fișierul de ieșire nevricos.out va conține două linii:
- pe prima linie numărul de secvențe din S care au asociate numere nevricoase.
- pe a doua linie numărul de subșiruri ale lui S care au asociate numere nevricoase.

Restricții și precizări

* Șirul S va conține maxim 1.000.000 de cifre

Exemplu:

nevricos.in

153175

nevricos.out

1
3

Explicație

S = 153175

a. Toate secvențele lui S sunt: 1, 15, 153, 1531, 15317, 153175, 5, 53, 531, 5317, 53175, 3, 31, 317, 3175, 1, 17, 175, 7, 75, 5;

Dintre aceste secvențe, doar secvența 15 satisface proprietatea cerută: 15 = (1*5) + (1*5) + (1*5);

b. Subșirurile lui S care îndeplinesc condițiile sunt: 15 ( 1 5 3 1 7 5), 15 ( 1 5 3 1 7 5 ), 15 (1 5 3 1 7 5 ).

Andrei Frîntu
Andrei Frîntu

Fondatorul platformei - mentor Academia

LinkedIn Instagram GitHub
© Copyright 2024 - CodulLuiAndrei.ro - Toate drepturile sunt rezervate