Instruções

'Problema dos marinheiros, dos cocos e do macaco'

Cinco marinheiros são náufragos em uma ilha e coletam muitos cocos durante o dia. Naquela noite, o primeiro marinheiro acorda e decide tomar a sua parte dos cocos mais cedo, então tenta dividir o monte de cocos igualmente em cinco pilhas, mas descobre que ainda há um coco sobrando. Então, ele o joga para um macaco e então esconde "sua" pilha, uma das cinco pilhas de cocos de tamanho igual, e empurra os outros quatro montes para formar um único monte visível de cocos novamente e vai para a cama. Resumindo uma longa história, cada marinheiro por sua vez se levanta uma vez durante a noite e executa as mesmas ações de dividir a pilha de cocos em cinco, descobrindo que sobra um coco e deixando o coco que resta para o macaco e unindo as outras quatro pilhas em uma única pilha. Pela manhã (após a ação sorrateira e separada de cada um dos cinco marinheiros durante a noite), os cocos restantes são divididos em cinco pilhas iguais para cada um dos marinheiros, quando então se constata que a pilha de cocos se divide igualmente entre os marinheiros sem resto. (Nada para o macaco pela manhã.)

O que fazer:

Crie uma função que retorne o tamanho mínimo possível da pilha inicial de cocos coletados durante o dia para N marinheiros. Nota: Claro que o conto é contado em um mundo onde a coleta de qualquer número de cocos em um dia e múltiplas divisões da pilha, etc. podem ocorrer em um tempo que se encaixe na linha da história, para não afetar a matemática.

Critérios de Aceitação:

Testes:

  • `splitCoconuts` deve ser uma função.
  • `splitCoconuts(5)` deve retornar 3121.
  • `splitCoconuts(6)` deve retornar 233275.
  • `splitCoconuts(7)` deve retornar 823537.

Console