Objective
Examples
(hat, 150) -> (candy, 250) -> (book, 300) ok
(hat, 150) -> (candy, 150) -> (book, 300) incorrect
Requirements
You should implement 4 functions below
InsertBack(gift, price)
Insert a (gift,price) to the end of the linked list
InsertAfter(gift, price, priceToInsertAfter)
Insert (gift,price) after priceToInsertAfter
If price does not exist in the linked list, do nothing
Delete(price)
Remove the (gift,price) matched price from the linked list
If this price does not exist in the linked list, do nothing
Reverse()
Reverse the linked list
(there are some examples in HW3 slides)
Input format:

The last line of input is "End", and we only need to print the result when get the "End".
Print:
First line: Empty or List
Second line: List of gifts and their corresponding prices
Output format:
