Algorithm design as it relates to time complexity problems like reducing fractions without using the euclidean algorithm for GCD

Write a 3-5 page paper discussing algorithm design as it relates to time complexity problems like reducing fractions without using the euclidean algorithm for GCD vs using the euclidean algorithm for GCD. When initially solving a problem, how might one detect that a solution needs extra attention with respect to an efficient algorithm vs standard solutions where a highly efficient solution may be indistinguishable from an inefficient one? Specifically discuss the potential tradeoff between an easy to understand inefficient solution vs a difficult to follow efficient solution. Is it always better to write optimal code if the end result is difficult to follow by future programmers who may maintain your code?

-it is like paper report!
here Im looking for the correct information that cover all points in this report, i dont care about the good writer or how many sources or format.
please read the homework carefully,
send me a daft to make sure you caver all point before due date