SSTABIL

Numim număr sstabil orice număr natural care este format dintr-o singură cifră sau care are suma oricăror două cifre vecine strict mai mare decât nouă. Asupra oricărui număr care nu este sstabil se pot efectua operaţii de înlocuire a oricăror două cifre vecine care au suma strict mai mică decât zece cu o cifră egală cu suma lor. Operaţiile … Read more

STIVA

Cerința Să se scrie un program care gestionează o stivă de numere întregi. Inițial stiva este vidă. Programul va citi de la tastatură o listă de operații, care pot fi: push X – adaugă valoarea întreagă X pe stivă; pop – elimină elementul din vârful stivei; top – afișează elementul din vârful stivei. Programul va realiza asupra stivei operațiile citite, … Read more

CUBURI2

Cerința Gigel are un set de n cuburi. Fiecare cub este marcat cu un număr natural, de la 1 la n și i se cunoaște lungimea laturii – număr natural. Cu o parte dintre aceste cuburi Gigel va construi o stivă, astfel: fiecare cub se analizează o singură dată, în ordinea numerelor marcate; dacă stiva nu conține niciun cub, cubul curent … Read more

SUM UNICE

Anul trecut de ziua ta ai primit un șir de n numere întregi. Anul acesta ai noroc: pe lângă un șir de numere întregi a1, a2, …, an mai primești și un număr natural k. Numim cadoul unei secvențe din șir de lungime k numărul elementelor care apar o singură dată în secvență. De exemplu, dacă a=(1,2,1,3,5) și k=4, atunci cadoul secvenței (1,2,1,3) este 2 (numerele 2 și 3 apar o singură dată), iar cadoul … Read more

H3

Tocmai ai primit cadou de ziua ta un șir de numere naturale a[1], a[2], …, a[n]. Ca să te simți împlinit, trebuie să determini lungimea maximă a unei secvențe cu proprietatea că oricare două valori din secvență sunt distincte. Cerința Determină lungimea maximă cerută și anul viitor vei mai primi un șir! Date de intrare Programul citește de … Read more

Palindrom3

Gigel a învăţat la şcoală un nou cuvânt: palindrom. El ştie acum că un palindrom este o construcţie formată din litere sau/şi cifre care arată la fel citită de la început spre sfârşit sau citită de la sfârşit spre început. De exemplu numerele 2552 și 12321 au proprietatea de palindrom. Deoarece lui Gigel îi place să se joace cu … Read more

Sortare prin metoda bulelor Bubble Sort

Sortarea prin metoda bulelor Bubble Sort Sortarea prin metoda bulelor Bubble Sort este o metoda mai putin efectiva de sortare dar are un algoritm destul de simplu de inteles. Ideea de baza a sortarii prin metoda bulelor este in a parcurge vectorul de la stanga spre dreapta, fiind comparate elementele alaturate, de pe pozitiile i … Read more

Sortare prin metoda selectiei minimului

Selecția minimului Fiind dat un vector de numere intregi, sa se sorteze crescator prin metoda selectiei minimului. Acest algoritm selecteaza la fiecare pa i cel mai mic element din vectorul de la pasul i+1 pana la n. Valoarea minima de la pasul i este pusa in vector la pozitia i, facandu-se intereschimbarea cu pozitia actuala a minimului. #include … Read more

Maximul a trei numere

Se citesc trei numere: a, b și c. Să se afișeze valoarea maximă. Valoarea maxima va fi retinuta in variabial maxim.   #include <iostream> using namespace std; int main() { int a,b,c,maxim;//declararea variabilelor cin>>a>>b>>c;//citirea variabilelor maxim=a;//inițializarea maximului cu primul număr if (b>maxim) { maxim=b; } if (c>maxim) { maxim=c; } cout<<maxim;//afișarea maximului return 0; }

interclasare divide et impera

Sortarea prin interclasare (merge-sort) Utilizand metoda divide et impera, sa se sorteze prin interclasare un sir #include<iostream.h>int a[20],n; void mergesort(int i,int m,int j) {int b[20],x=i,k=1,y=m+1;  while(x<=m && y<=j)      if (a[x]<a[y])            b[k++]=a[x++];      else            b[k++]=a[y++];  while (x<=m)         b[k++]=a[x++];  while (y<=j)        b[k++]=a[y++];  int t=i;         for (k=1;k<=(j-i)+1;k++)         a[t++]=b[k];      }   void divimp(int i,int j) … Read more