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
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;
}
#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
Franceza,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Biologie,
9 ani în urmă
Franceza,
9 ani în urmă
Matematică,
9 ani în urmă