- completed 1A
- completed 1B

TODO:
* fix null print when queue is empty
* finish comments