Kolejka – omówienie zadania

Szczegółowe omówienie zadania Kolejka:

Link do powyższego omówienia zadania Kolejka: https://youtu.be/b9Kvj81xIYk?t=1892
Link do treści zadania Kolejka: https://oki.org.pl/kolejka-zadanie/


Jak się uczyć na podstawie tego zadania? https://youtu.be/QgLyXYmFQeU?t=2019
Pamiętaj by zajrzeć max 1 raz – wtedy się rozwijasz: https://youtu.be/pkLXuuOe_qA?t=3625

Lista zadań z rozwiązaniami: https://oki.org.pl/lista-zadan-materialy.php
Samouczek – przygotowanie do Olimpiad: https://oki.org.pl/tutorial/

Zajęcia: https://oki.org.pl/harmonogram-zajec/
Informacje o zajęciach: https://oki.org.pl/newsletter.php

Warto startować w Olimpiadzie Informatycznej!
https://youtu.be/K7fZfJ8nN6A?t=109


Kod C++ programu implementującego kolejkę


/*
//class implementing queue in C++
//the same functionality as STL (Standard Template Library ) class queue in C++ 
//with usage example
//Version 1.5
Consists
a. Program template
b. defintion of class mqueue 
c. Constructor
d. empty() method
e. push() method
f. dequeue() method
Author: Daniel Olkowski / Olimpijskie Kolo Informatyczne
*/
#include <iostream>
#include <vector>
using namespace std;
class mqueue {
public:
mqueue() { 
first = last = -1;
} 
bool empty() {
if (first == -1 ) 
return true; 
return false; 
}	
void push(int value) {
if (  empty() == true ) {
elements.push_back(value);
first = last = 0;
return;
}
elements.push_back(value);
++last;
}	
int dequeue() {
int value;
if ( empty() ) {
return value;
}
if ( first == last) {
value = elements[first];
first = last = -1;
elements.clear();
return value;
}
value = elements[first];
++first;
return value;
}
private:
vector<int> elements;
int first, last;
};	
int main() {
mqueue	payments;
int value;
cout << "empty?: " << payments.empty() << "\n";
payments.push(5);
payments.push(-3);
payments.push(8);
cout << "empty?: " << payments.empty() << "\n";
cout << "serviced: " << payments.dequeue() << "\n";
cout << "serviced: " << payments.dequeue() << "\n";
payments.push(11);
cout << "serviced: " << payments.dequeue() << "\n";
cout << "serviced: " << payments.dequeue() << "\n";
cout << "empty?: " << payments.empty() << "\n";
return 0;
}
Kod C++ programu implementującego kolejkę

Nie dodano jeszcze komentarza, rozpocznij dyskusję pierwszy.

Dodaj komentarz