Lista de probleme 6

Filtrare

Scrieți o funcție care returnează numărul de secvențe care au între L și U litere distincte. Într-o secvență fiecare literă se va număra o singură dată.

Folclorul informatic

#3802 MinLexSwap C++

Scrieți o funcție care primește ca parametru un șir de litere mici s și va returna șirul minim lexicografic obținut prin interschimbarea a exact două litere diferite din s.

Folclorul informatic

#3941 CountSumS C++

Scrieți funcția care are antetul:

long long CountSumS(vector<int> &a, int s)

Funcția va returna numărul de perechi (a[i], a[j]) cu i < j și a[i] + a[j] = s.

Folclorul informatic

#4205 SecvSumS C++

Scrieți funcția care are antetul:

int SecvSumS(vector<int> &a, int s)

Funcția va returna lungimea minimă a unei secvențe nevide din a care are suma egală cu s. Dacă nu există nicio secvență de sumă s funcția va returna valoarea -1.

#3798 NrMinMaxAp C++

Scrieți funcția care are antetul:

int NrMinMaxAp(vector<int> &a)

Funcția va returna numărul care apare de cele mai multe ori în a. Dacă există mai multe numere care apar de număr maxim de ori, se va returna minimul dintre ele.

#3799 CountNum C++

Scrieți funcția care are antetul:

vector<int> CountNum(vector<int> &a, int S)

Funcția va returna un vector care să memoreze, în ordine crescătoare, un număr cât mai mare de numere din a care au suma mai mică sau egală cu S. Dacă există mai multe soluții se va returna vectorul care are suma elementelor minimă.

Folclorul informatic