Contagem Longa Maia

Já ouviu falar de 13.0.0.0.0 e do fim do mundo? A civilização maia costumava registrar os dias transcorridos desde sua data mitológica de criação (11 de agosto de 3114 a.C. no calendário gregoriano proléptico é a data mais aceita) com um sistema que hoje é chamado de "Contagem Longa".

Os dias eram registrados em um contador de 5 posições com um sistema misto de base20 e base18. Começando pela esquerda, os nomes e valores das posições do contador são:

  • Baktun = 20 Katun = 144000 dias (de 1 a 13)
  • Katun = 20 Tun = 7200 dias (de 0 a 19)
  • Tun = 18 Uinal = 360 dias (de 0 a 19)
  • Uinal = 20 Kin = 20 dias (de 0 a 17)
  • Kin = 1 dia (de 0 a 19)

Um ciclo completo do calendário equivale a 1872000 dias (13 Baktun).

O número total inicial de Kin é igual aos dias transcorridos desde o ponto inicial até a data de interesse, menos 365. Em seguida, para cada posição do contador, o valor é obtido dividindo o Kin pelo valor correspondente em dias da posição do contador (144000 para Baktun, 7200 para Katun e assim por diante), usando o Kin que, a cada etapa, se torna o resto da divisão.

Dada uma data como string, você deve retornar uma string representando a Data da Contagem Longa Maia, unindo os valores de Baktun, Katun, Tun, Uinal e Kin com um ponto entre eles.

Exemplos

getMayanDate("2012, 12, 21") ➞ "13.0.0.0.0"
// Whole part of 1872000 passed days / Baktun = 13, Kin (remainder) is 0

getMayanDate("1776, 7, 4") ➞ "12.8.0.1.13"
// Whole part of 1785633 passed days / Baktun = 12, Kin (remainder) is 57633
// Whole part of Kin / Katun = 8, Kin is now 33.
// Whole part of Kin / Tun = 0, Kin is  33.
// Whole part of Kin / Uinal = 1, Kin is 13.

getMayanDate("1200, 1, 1") ➞ "10.18.15.3.8"

Observações

  • A data inicial já está na aba Code.
  • Lembre-se de subtrair 365 dias do total de dias transcorridos antes de iniciar os cálculos.
  • Kin é literalmente uma variável que muda a cada etapa.
  • As datas fornecidas estão no formato "YYYY, MM, DD".
  • Na aba Resources, você encontra mais informações sobre a Contagem Longa Maia e uma ferramenta para calculá-la a partir de qualquer data.