Informatică, întrebare adresată de Vendetta47, 8 ani în urmă

Să se scrie un program care gestionează o coadă de numere întregi. Inițial coada este vidă. Programul va citi de la tastatură o listă de operații, care pot fi:

push X – adaugă valoarea întreagă X în coadă;
pop – elimină elementul din coadă;
front – afișează elementul de la începutul cozii.
Programul va realiza asupra cozii operațiile citite, în ordine. Afișările se fac pe ecran, câte o valoare pe linie.
Link problema: https://www.pbinfo.ro/?pagina=probleme&id=876

Problema este ca primesc doar 80P si doresc o solutie de 100P.
Aceasta este solutia mea de 80P:

#include
using namespace std;
void push(int s[],int val, int &sf )
{
if(sf<1000)
s[sf++]=val;
}


void pop(int sf, int &inc)
{
if(sf>1)
inc++;
}

int front(int s[], int inc)
{
return s[inc];
}
using namespace std;

int main()
{
int n, sf=0, inc=0, val, s[1000];
string p;
cin>>n;
for(int i=1; i<=n; i++)
{
cin>>p;
if(p=="push")
{
cin>>val;
push(s ,val, sf);
}
if(p=="pop")
pop(sf, inc);
if(p=="front")
{
cout< cout< }
}
return 0;
}

Răspunsuri la întrebare

Răspuns de petrutrimbitasp1kwzr
6
O greseala pe care o vad e ca ai pus coada de dimensiune 1000. Chiar daca coada nu poate avea mai mult de 1000 la un moment dat, imagineaza-ti ce se intampla daca ai de 1000 de push, 1000 de pop si pe urma inca 1000 de push
Alte întrebări interesante