TI-Basic (TI-84 Plus CE com OS 5.2 ou superior), 64 bytes
getDate
"It's "+toString(Ans(1))+" already, folks, go home.
O TI-Basic é uma linguagem tokenizada. Alguns comandos ( getDate
, toString(
etc.) e todas as letras minúsculas são de dois bytes e tudo o mais usado aqui é um byte cada.
Explicação:
getDate # 3, store {Y,M,D} in Ans
"It's "+toString(Ans(1))+" already, folks, go home. # 61, implicitly return required string with Y from getDate
TI-Basic (TI-84 Plus CE com OS 5.1), 108 bytes
{0,1→L1
getDate
Ans(1)L1→L2
LinReg(ax+b) Y1
Equ►String(Y1,Str0
sub(Str0,1,length(Str0)-3→Str0
"It's "+Str0+" already, folks, go home.
O TI-Basic é uma linguagem tokenizada. As variáveis de usuário mais complicado ( , , , ), alguns comandos ( , , , , ), e todas as letras minúsculas são de dois bytes e tudo o mais usado aqui é um byte cada.Y1
L1
L2
Str0
LinReg(ax+b
getDate
sub(
Equ►String(
length(
O OS 5.2 adicionou um toString(
comando que obsolescia cerca de metade desse envio, baseado nesse algoritmo .
Explicação:
{0,1→L1 # 8 bytes
getDate # 3 bytes, store {Y,M,D} list in Ans
Ans(1)L1→L2 # 10 bytes, multiply L1 by the year and store in L2
LinReg(ax+b) Y1 # 5 bytes, take a linear regression of the points specified by each pair of corresponding coordinates in L1 and L2 and store it in Y1
Equ►String(Y1,Str0 # 8 bytes, convert Y1 to a string
sub(Str0,1,length(Str0)-3→Str0 # 18 bytes, remove the "X+0" from LinReg
"It's "+Str0+" already, folks, go home. # 56 bytes, implicitly return the required output