#2778
next_perm
C++
Scrieți definiția completă a subprogramului C++:
void next_perm(int n, int P[])
Subprogramul are 2 parametri:
n
– prin care primește un număr naturalP
– prin care primește un tablou unidimensional cu n
elemente ce reprezintă o permutare a mulțimii {1,2,...,n}
.Subprogramul va returna tot în parametru P
următoarea permutare din punct de vedere lexicografic.
Problema | next_perm | Operații I/O | tastatură/ecran |
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #15932390 | Utilizator | |
Fișier | next_perm.cpp | Dimensiune | 372 B |
Data încărcării | 22 Mai 2019, 09:49 | Scor / rezultat | Eroare de compilare |
next_perm.cpp: In function 'void next_perm(int, int)': next_perm.cpp:14:5: error: 'i' was not declared in this scope for(i=1;i<=n;i++) ^ next_perm.cpp:16:10: error: 'p' was not declared in this scope cin>>p[i]; ^ next_perm.cpp:17:3: error: 'i' was not declared in this scope } i=n-1; ^ next_perm.cpp:18:8: error: 'p' was not declared in this scope while (p[i]>p[i+1]) i--; ^ next_perm.cpp:20:9: error: 'p1' was not declared in this scope p1=i; i=n; ^ next_perm.cpp:22:8: error: 'p' was not declared in this scope while(p[i]<p[p1]) i--; ^ next_perm.cpp:23:12: error: 'p2' was not declared in this scope p2=i; ^ next_perm.cpp:24:9: error: 'aux' was not declared in this scope aux=p[p1]; ^ next_perm.cpp:24:13: error: 'p' was not declared in this scope aux=p[p1]; ^ next_perm.cpp:29:1: error: 'ult' was not declared in this scope ult=n; ^ next_perm.cpp:31:5: error: expected ';' before 'i' i++; ult--; ^ next_perm.cpp: In function 'int main()': next_perm.cpp:41:19: error: invalid conversion from 'int*' to 'int' [-fpermissive] next_perm(n, P); ^ next_perm.cpp:11:6: error: initializing argument 2 of 'void next_perm(int, int)' [-fpermissive] void next_perm(int n, int) ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema next_perm face parte din a doua categorie. Pentru aceste probleme se folosește un program suport, furnizat de propunătorul problemei. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.