👤

Se dă un vector cu n elemente numere naturale. Folosind metoda Divide et Impera să se verifice dacă are elementele ordonate crescător.
ee urgeenntt



Răspuns :

Salut. Uite aici rezolvarea problemei tale. Succes in continuare!

#include "stdafx.h"
#include <iostream>

using namespace std;

int ordonare(int v[], int li, int ls)
{
    int m;

    if (li == ls)
        return 1;
    else
    {
        m = (li + ls) / 2;
        if (ordonare(v, li, m) && ordonare(v, m + 1, ls) && v[m] <= v[m + 1])
            return 1;
        else 
            return 0;
    }
}

void citire(int v[], int n)
{
    for (int i = 1; i <= n; i++) {
         cin >> v[i];
}

int main()
{
    int n;
    cin >> n;

    int *a = new int [n];

    citire(a, n);

    if (ordonare(a, 1, n))
        cout << "True";
    else
        cout << "False";

     return 0;
}