#2128
Permutare2
Definim o permutare dublă de ordin n
ca fiind un șir format din primele 2n
numere naturale nenule:
(a[1], a[2], ... , a[n], a[n+1], a[n+2], ... , a[2n])
. Această permutare dublă este de trei ori în creștere, dacă sunt adevărate următoarele trei proprietăți:
n
elemente este crescătoare: a[1]<a[2]< ... < a[n]
n
elemente este crescătoare: a[n+1]<a[n+2]< ... < a[2n]
a[1]<a[n+1], a[2]<a[n+2], ... , a[n]<a[2n]
.Pentru simplificare în continuare permutarea dublă de trei ori în creștere se va numi permutare. Vom considera toate permutările de ordin n
ordonate lexicografic, numerotate începând cu 1
.
Există două tipuri de întrebări:
Să se răspundă corect la un set de întrebări.
OJI 2017, Clasele XI-XII
Problema | Permutare2 | Operații I/O |
permutare2.in /permutare2.out
|
---|---|---|---|
Limita timp | 1.5 secunde | Limita memorie |
Total: 64 MB
/
Stivă 32 MB
|
Id soluție | #21550408 | Utilizator | |
Fișier | permutare2.c | Dimensiune | 1.96 KB |
Data încărcării | 04 Martie 2020, 21:19 | Scor / rezultat | Eroare de compilare |
permutare2.c: In function 'bkt': permutare2.c:9:5: error: 'for' loop initial declarations are only allowed in C99 mode for(int i=1; i<=n; i++) ^ permutare2.c:9:5: note: use option -std=c99 or -std=gnu99 to compile your code permutare2.c:10:7: warning: format '%d' expects argument of type 'int', but argument 3 has type 'long long int' [-Wformat=] fprintf(fout,"%d ",v[i]); ^ permutare2.c:13:5: error: 'for' loop initial declarations are only allowed in C99 mode for(int i=v[poz-1]+1; i<=poz*2-1; i++){ ^ permutare2.c: In function 'sol2': permutare2.c:33:3: error: 'for' loop initial declarations are only allowed in C99 mode for(long long i=v[poz-1]+1; i<v[poz]; i++) ^ permutare2.c: In function 'main': permutare2.c:54:13: warning: ignoring return value of 'fscanf', declared with attribute warn_unused_result [-Wunused-result] fscanf(fin,"%lld",&p); ^ permutare2.c:73:15: warning: ignoring return value of 'fscanf', declared with attribute warn_unused_result [-Wunused-result] fscanf(fin,"%lld",&v[i]); ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Permutare2 face parte din prima categorie. 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ă.