#1151 VerifEgaleDivImp de pe pbinfo:
Cerinţa
Se dă un vector cu n elemente numere naturale. Folosind metoda Divide et Impera să se verifice dacă toate elementele vectorului sunt egale.
Date de intrare
Programul citește de la tastatură numărul n, apoi n numere naturale, reprezentând elementele vectorului.
Date de ieşire
Programul afișează pe ecran mesajul DA, dacă vectorul are toate elementele egale, sau NU, în caz contrar.
Restricţii şi precizări
1 ≤ n ≤ 500
fiecare element al vectorului va avea cel mult patru cifre
Răspunsuri la întrebare
Răspuns de
3
Răspuns:
# include <iostream>
using namespace std;
int n, v[505];
void citire(int &n, int v[])
{
cin>>n;
for (int i=1; i<=n; i++)
cin>>v[i];
}
int divide(int v[], int st, int dr)
{
if(st == dr)
return 1;
else
{
int mij = (st + dr)/2;
int R1 = divide(v, st, mij);
int R2 = divide(v, mij+1, dr);
if( R1==R2 && R1 == 1 && v[st] == v[dr])
return 1;
else
return 0;
}
}
int main()
{
citire(n, v);
if(divide(v, 1, n)==1)
cout<<"DA";
else
cout<<"NU";
return 0;
}
Explicație:
Alte întrebări interesante
Biologie,
8 ani în urmă
Evaluare Națională: Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă