These problems are all about manipulating what you are given into what you want to prove. You should have a reference of some of the rules of boolean algebra.
Some of the relevant ones for this problem are
"a -> b" also means that "not b -> not a"
"not (a and b)" also means that "(not a) or (not b)"
Boolean algebra works in a lot of ways like normal algebra in that manipulate groups of things together. For example
((p->q) ^ (q->r)) -> (p->r) can be thought of as "a ^ b -> c", manipulated by the rules above and then you can substitute parts back in.