I'm also working through the course, currently I'm working on the "StateT.hs" exercises, so I've been where you are.
About your question, the first thing to notice is that '((->) t' is nothing more than the function type constructor partially applied to some value 't'.
It is in prefix notation, but we could think about that signature this way(although it's syntactically incorrect):
(<*>) :: (t -> (a -> b)) -> (t -> a) -> (t -> b)
So, the first argument you have (t -> (a ->b)) is a function that takes a 't' argument and gives another function, (a -> b), back.
The second argument (t -> a) is a function that also takes a 't' as argument and fives a 'a' back (tip: it's the same 't' the first function took).
If you remember the signature for function composition - (.) - it goes like this:
(.) :: (b -> c) -> (a ->b) -> (a -> c)
It's somewhat similar to that from apply (<*>).
From this I think you could gain some intuition and work on your solution.
I hope this helps!