Prośba o pomoc algorytmy C++, zadanie ze stosem.
Ostatnio zmodyfikowano 2022-03-30 23:10
grigoriii Temat założony przez niniejszego użytkownika |
Prośba o pomoc algorytmy C++, zadanie ze stosem. » 2022-03-30 23:10:34 Hej, próbuję rozwiązać zadanie z algorytmów z języka C++, w szkopule uzyskuje 50%, i nie mogę zrozumieć dlaczego nie działa program skoro przy kompilacji i wprowadzeniu danych z zadania wynik jest ok.
Link do zadania: https://szkopul.edu.pl/problemset/problem/uLc056RxBXhNDO9xz4CR7iVM/site/?key=statement Mój program:
#include <iostream> using namespace std; const int LIMIT = 35; struct Stack { int tab[LIMIT]; int top; }; void create(Stack &S) { S.top = -1; } void push(Stack &S,int x) { { S.top = S.top + 1; S.tab = x; } } int top(Stack S) { return S.tab; } void pop(Stack &S) { { S.top--; } } int main() { Stack plytkie; create(plytkie); Stack glebokie; create(glebokie); push(plytkie,0); push(glebokie,0); int notes = 0 ;;
string slowo,rodzaj; int ilosc_slow,nrid; cin >> ilosc_slow; int *t = new int[ilosc_slow]; for(int i=0; i<ilosc_slow; i++) { cin >> slowo; if(slowo == "dziekuje") { cin >> rodzaj; cin >> nrid; if(rodzaj == "plytki") { push(plytkie, nrid); } else if(rodzaj == "gleboki") { push(glebokie, nrid); } } else if(slowo == "prosze") { cin >> rodzaj; if(rodzaj == "plytki") { t[notes] = top(plytkie); pop(plytkie); notes++; } else if(rodzaj == "gleboki") { t[notes] = top(glebokie); pop(glebokie); notes++; } } } for(int i=0; i<notes; i++) { if( t != 0 ) cout << t << endl; } return 0; } |
|
« 1 » |