Lista dada de enteros {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4}
. Para aquellos interesados, estos números se utilizan en el cálculo de los días laborables.
Día de la semana = (m[n] + d + y + y>>2 + y/400 - y/100) % 7;
, donde m[n]
- expresión que estoy buscando, d
- día del mes, y
- year - (month <= 2)
.
Construya una expresión que conste de operadores aritméticos, lógicos y bit a bit, que generarán un número n
entero positivo m
para que sea m % 7
igual al n-ésimo número en la lista.
No se permiten ramas, operadores ternarios, búsquedas de tablas y punteros.
Puntuación:
1 - para | & ^ ~ >> <<
operadores
1.1 - para + - < > <= >= == != ! && ||
operadores
1.2 - para *
operadores
1.4 - para / %
operadores
Responda con la puntuación más baja gana.
Personalmente he encontrado:
(41*n)>>4+((n+61)>>4)<<2
con puntaje 6.4. Pensé que esto sería difícil de encontrar, así que proporcioné una expresión propia para comenzar.
table lookups
Redacción interesante supongo ...