Rezolvare PBinfo #3720

Decorative Icon Problema: Aproape / 3720

Decorative IconAutor: Deivid

Se dă un număr N în baza 10. Un număr M se numește aproape de N dacă îndeplinește următoarele trei condiții:

  1. Are același număr de cifre cu N.
  2. Reprezentarea în baza 10 diferă față de cea a lui N în exact o poziție. Altfel spus, nu mai mult, nici mai puțin, o singură cifră diferă.
  3. Această cifră este fie cu 1 mai mică, fie cu 1 mai mare decât cifra corespunzătoare din N.

Exemplu: Să presupunem că N = 1903. Un exemplu de număr M care este aproape de N este 1913, pentru că diferă (doar) cifra zecilor, iar diferența între 0 (cifra zecilor în N) și 1 (cifra zecilor în M) este 1. Numerele 1903, 903 și 1893 nu sunt aproape de N.

Cerința

Cunoscând numărul N, să se scrie un program care determină:

  1. Numărul de cifre ale acestui număr.
  2. Numărul de numere aproape de N.
  3. Numărul de numere aproape de cel puțin un număr aproape de N.
Date de intrare

Fișierul de intrare aproape.in conține pe prima linie un număr V a cărui valoare poate fi doar 1, 2 sau 3, iar pe a doua linie numărul natural N.

Date de ieșire

Dacă valoarea lui V este 1, atunci fișierul aproape.out va conține pe prima linie un singur număr ce reprezintă numărul de cifre ale lui N.

Dacă valoarea lui V este 2, atunci fișierul aproape.out va conține pe prima linie un singur număr natural ce reprezintă numărul de numere aproape de N.

Dacă valoarea lui V este 3, atunci fișierul aproape.out va conține pe prima linie un singur număr natural ce reprezintă numărul de numere aproape de un număr aproape de N.

Restricții și precizări
  • 0 ≤ N < 1.000.000.000
  • Pentru teste în valoare de 20 de puncte avem V = 1.
  • Pentru teste în valoare de 30 de puncte avem V = 2.
  • Pentru teste în valoare de 50 de puncte avem V = 3.
  • Aveți grijă să nu numărați vreun număr de mai multe ori!
Exemplul 1:

aproape.in

1
1903

aproape.out

4
Exemplul 2:

aproape.in

2
1903

aproape.out

5

Explicație

Numerele aproape de 1903 sunt: 1803, 1902, 1904, 1913 și 2903.

Exemplul 3:

aproape.in

3
1903

aproape.out

15

Explicație

Cele 15 numere sunt: 1703, 1802, 1804, 1813, 1901, 1903, 1905, 1912, 1914, 1923, 2803, 2902, 2904, 2913 și 3903.

Decorative Icon Explică rezolvarea folosind Inteligența Artificială

Folosește modelul nostru de AI special antrenament pentru a rezolva problemele de pe PBinfo! În baza creditelor AI primești explicații pentru probleme, pe care le alegi și le rulezi exact atunci când dorești, la un singur click distanță! Află mai multe informații:

👉 Achiziționează credite AI
Andrei Frîntu
Andrei Frîntu

Fondatorul platformei - mentor Academia

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