Entrevista de programação imaginária

Crie uma função para verificar se um candidato está qualificado em uma entrevista de programação imaginária de uma startup de tecnologia imaginária.

Os critérios para que um candidato seja qualificado na entrevista de programação são:

  1. O candidato deve ter concluído todas as questões.
  2. O tempo máximo concedido para concluir a entrevista é de 120 minutos.
  3. O tempo máximo concedido para questões muito fáceis é de 5 minutos cada.
  4. O tempo máximo concedido para questões fáceis é de 10 minutos cada.
  5. O tempo máximo concedido para questões médias é de 15 minutos cada.
  6. O tempo máximo concedido para questões difíceis é de 20 minutos cada.

Se todas as condições acima forem satisfeitas, retorne "qualified"; caso contrário, retorne "disqualified".

Você receberá um array com o tempo que um candidato levou para resolver uma determinada questão e o tempo total que levou para concluir a entrevista.

Dado um array, em uma condição verdadeira ele sempre estará no formato [very easy, very easy, easy, easy, medium, medium, hard, hard].

O tempo máximo para concluir a entrevista inclui uma margem de 20 minutos.

Exemplos

interview([5, 5, 10, 10, 15, 15, 20, 20], 120) ➞ "qualified"

interview([2, 3, 8, 6, 5, 12, 10, 18], 64) ➞  "qualified"

interview([5, 5, 10, 10, 25, 15, 20, 20], 120) ➞ "disqualified"
// Exceeded the time limit for a medium question.

interview([5, 5, 10, 10, 15, 15, 20], 120) ➞ "disqualified"
// Did not complete all the questions.

interview([5, 5, 10, 10, 15, 15, 20, 20], 130) ➞ "disqualified"
// Solved all the questions in their respected time limits but exceeded the total time limit of the interview.

Observações

Tente resolver o problema usando apenas métodos de array.