Which one is the correct answer & explain why. Thank you.
"Has cleaned" implies the action is completed. "Has been cleaning" implies the action is still going on.
You might say "Lama has been cleaning her room every morning. She's shopping right now." That illustrates the difference between continuous action and continual action.
Continuous means continuing all the time. A solid line is continuous.
Continual means continuing at appropriate times. A dashed line is continual.
One means the action of cleaning was done in the past and is completed.
One means the action of cleaning is currently still in progress.
It depends on which action you are trying to describe.
Lama cleaned her room all morning and was free to go shopping.
Lama has been cleaning her room all morning but took a break to go shopping. She'll finish cleaning when she returns.