Untitled
unknown
plain_text
a year ago
1.2 kB
4
Indexable
void recursiva(CardCount estrutura, wchar_t *cartas, int nr_sequencia1, int nr_sequencia2, wchar_t cartamaiorsequencia, int indicecartaatual, wchar_t *cartasatuais) { int lenSequencia = wcslen(cartasatuais); if (nr_sequencia1 == 0 && nr_sequencia2 == 0 && sequenciaValida(cartamaiorsequencia,cartasatuais,lenSequencia)) { for(int i = 0; i < lenSequencia; i++){ wprintf(L"%lc ", cartasatuais[i]); } wprintf(L"\n"); return; } for (int i = 0; estrutura->naipes[indicecartaatual][i]; i++) { wchar_t *newCartasatuais = malloc((wcslen(cartasatuais) + 2) * sizeof(wchar_t)); wcscpy(newCartasatuais, cartasatuais); wcsncat(newCartasatuais, &estrutura->naipes[indicecartaatual][i], 1); if (nr_sequencia1 > 0) { recursiva(estrutura, cartas, nr_sequencia1 - 1, nr_sequencia2, cartamaiorsequencia, indicecartaatual + 1, newCartasatuais); } if (nr_sequencia2 > 0) { recursiva(estrutura, cartas, nr_sequencia1, nr_sequencia2 - 1, cartamaiorsequencia, indicecartaatual + 1, newCartasatuais); } free(newCartasatuais); } }
Editor is loading...
Leave a Comment