Informatică, întrebare adresată de mimi23, 9 ani în urmă

c++ URGENT Sa se genereze toate cuvintele de 5 litere cu conditia ca nu pot exista 2 vocale alaturate.(cu backtrecking)

Răspunsuri la întrebare

Răspuns de CRG
0
#include <iostream>
#include <cstring>

using namespace std;

char cuvant[6];

bool valid(int poz) {
    if(poz == 0)
        return true;
    if(strchr("aeiou", cuvant[poz]) != NULL && strchr("aeiou", cuvant[poz - 1]) != NULL)
        return false;
    return true;
}

void backtrack(int poz) {
    for(char c = 'a'; c <= 'z'; c++) {
        cuvant[poz] = c;
        if(valid(poz)) {
            if(poz == 4)
                cout << cuvant << endl;
            else
                backtrack(poz + 1);
        }
    }
}

int main()
{
    cuvant[5] = '\0';
    backtrack(0);
    return 0;
}


Alte întrebări interesante