Dada lista de números inteiros {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4}
. Para aqueles interessados, esses números são usados no cálculo dos dias úteis.
Dia da semana = (m[n] + d + y + y>>2 + y/400 - y/100) % 7;
, onde m[n]
- expressão que estou procurando, d
- dia do mês, y
- year - (month <= 2)
.
Construa a expressão que consiste em operadores aritméticos, lógicos e bit a bit, que produzirão um número n
inteiro positivo m
para que m % 7
seja igual ao n-ésimo número na lista.
Ramos, operadores ternários, pesquisas de tabela e ponteiros não são permitidos.
Pontuação:
1 - para | & ^ ~ >> <<
operadores
1.1 - para + - < > <= >= == != ! && ||
operadores
1.2 - para *
operador
1.4 - para / %
operadores
Responda com vitórias mais baixas.
Pessoalmente eu encontrei:
(41*n)>>4+((n+61)>>4)<<2
com pontuação 6.4. Eu pensei que isso seria difícil de encontrar, de modo a fornecer uma expressão própria para começar.
table lookups
Interessante fraseado, suponho ... #