#959
secmax
Fie \( X = \overline{X_1 X_2 X_3…X_N} \) un număr natural din N
cifre.
Definim secvență în numărul X
orice număr format dintr-un grup de cifre situate pe poziții consecutive în X
. De exemplu, pentru X=12543644
pot fi secvențe numerele: 5436
, 12
, 1
, 364
, 12543644
, etc.
Definim secvență-maxim în șirul \(X\) o secvență \( \overline{X_K X_{K+1}…X_P…X_T} \) în care există o singură cifră \( X_P \) astfel încât \( X_K < X_{K+1} <…< X_P > X_{P+1} >…> X_T \) ( \(1≤K<P<T≤N\) și \(K,P,T\) sunt numere naturale). De exemplu, pentru X=12543644
secvențele-maxim sunt: 1254
, 12543
, 254
, 2543
, 364
.
Scrieți un program care citește numărul N
, cele N
cifre ale numărului X
și care determină numărul total de secvenţe-maxim din numărul X
.
Olimpiada de Informatică, etapa pe sector, Bucureşti, 2014
Problema | secmax | Operații I/O |
secmax.in /secmax.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #50423061 | Utilizator | |
Fișier | secmax.cpp | Dimensiune | 692 B |
Data încărcării | 09 Aprilie 2024, 09:13 | Scor / rezultat | Eroare de compilare |
secmax.cpp:7:1: error: expected initializer before 'const' const int nmax = 25005; ^ secmax.cpp:8:7: error: 'nmax' was not declared in this scope int a[nmax], st[nmax], dr[nmax]; ^ secmax.cpp:8:17: error: 'nmax' was not declared in this scope int a[nmax], st[nmax], dr[nmax]; ^ secmax.cpp:8:27: error: 'nmax' was not declared in this scope int a[nmax], st[nmax], dr[nmax]; ^ secmax.cpp: In function 'int main()': secmax.cpp:16:3: error: 'a' was not declared in this scope a[i] = c - 48; ^ secmax.cpp:20:6: error: 'a' was not declared in this scope if(a[i] > x){ ^ secmax.cpp:21:4: error: 'st' was not declared in this scope st[i] = st[i - 1] + 1; ^ secmax.cpp:24:4: error: 'st' was not declared in this scope st[i] = 1; ^ secmax.cpp:26:7: error: 'a' was not declared in this scope x = a[i]; ^ secmax.cpp:30:6: error: 'a' was not declared in this scope if(a[i] > x){ ^ secmax.cpp:31:4: error: 'dr' was not declared in this scope dr[i] = dr[i + 1] + 1; ^ secmax.cpp:34:4: error: 'dr' was not declared in this scope dr[i] = 1; ^ secmax.cpp:36:7: error: 'a' was not declared in this scope x = a[i]; ^ secmax.cpp:40:11: error: 'st' was not declared in this scope sol += (st[i] - 1) * (dr[i] - 1); ^ secmax.cpp:40:25: error: 'dr' was not declared in this scope sol += (st[i] - 1) * (dr[i] - 1); ^ secmax.cpp:42:2: error: 'cout' was not declared in this scope cout << sol << '\n'; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema secmax 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ă.