reducere

Time limit: 1s Memory limit: 8MB Input: reducere.in Output: reducere.out

O operaţie de reducere aplicată asupra unui șir constă în selectarea unui număr prim pp şi a unor elemente din șirul dat care sunt divizibile cu pp şi împărţirea acestora la pp.

Asupra unui șir format din nn numere naturale nenule se aplică o succesiune de operaţii de reducere, până când toate elementele șirului devin egale. Valoarea finală a elementelor șirului este denumită valoare de egalitate.

Valoarea de reducere a unui șir este cea mai mare dintre valorile de egalitate care se pot obţine în urma aplicării unor operaţii de reducere asupra acestui șir.

Cerință

  • Determinați valoarea de reducere pentru un șir dat.
  • Determinați numărul minim de operaţii de reducere care trebuie să fie aplicate șirului dat pentru a obţine valoarea de reducere.

Date de intrare

Fişierul de intrare reducere.in conţine pe prima linie un număr natural CC, reprezentând cerința care trebuie să fie rezolvată (11 sau 22), pe a doua linie un număr natural nn, iar pe următoarele nn linii câte un număr natural, reprezentând câte un element al șirului.

Date de ieșire

Fişierul de ieşire reducere.out va conţine o singură linie, pe care va fi scris numărul determinat pentru cerinţa CC din fișierul de intrare.

Restricții și precizări

  • 2n2 0002 \leq n \leq 2 \ 000
  • Elementele șirului sunt numere naturale nenule 1012\leq 10^{12}.
# Scor Restricții
1 34 C=1C=1
2 37 C=2C=2, valorile din șir 106\leq 10^6
3 29 C=2C=2, fără restricții suplimentare

Exemplul 1

reducere.in

1
3
10
6
12

reducere.out

2

Explicație

Operaţia de reducere 11: împărţim prin 33 pe 66 şi pe 1210,2,412 \Rightarrow 10, 2, 4

Operaţia de reducere 22: împărţim prin 55 pe 102,2,410 \Rightarrow 2, 2, 4

Operaţia de reducere 33: împărţim prin 22 pe 42,2,24 \Rightarrow 2, 2, 2

Valoarea de reducere este 22, aceasta fiind cea mai mare dintre valorile de egalitate posibile.

Exemplul 2

reducere.in

2
3
10
6
12

reducere.out

3

Log in or sign up to be able to send submissions!