(Ispirato dall'Enigmista della scorsa settimana su FiveThirtyEight.com. Post sandbox .)
Dato un anno tra il 2001 e il 2099, calcolare e restituire il numero di giorni durante quell'anno solare dove mm * dd = yy
(dove yy
è l' anno a 2 cifre ).
Il 2018, ad esempio, ha 5:
- 18 gennaio (1 * 18 = 18)
- 9 febbraio (2 * 9 = 18)
- 6 marzo (3 * 6 = 18)
- 3 giugno (6 * 3 = 18)
- 2 settembre (9 * 2 = 18)
L'input può essere un anno numerico a 2 o 4 cifre.
L'output dovrebbe essere un numero intero. Lo spazio di trascinamento opzionale o il ritorno vanno bene.
Elenco completo di input / output:
Input = Output
2001 = 1 2021 = 3 2041 = 0 2061 = 0 2081 = 2
2002 = 2 2022 = 3 2042 = 4 2062 = 0 2082 = 0
2003 = 2 2023 = 1 2043 = 0 2063 = 3 2083 = 0
2004 = 3 2024 = 7 2044 = 3 2064 = 2 2084 = 5
2005 = 2 2025 = 2 2045 = 3 2065 = 1 2085 = 1
2006 = 4 2026 = 2 2046 = 1 2066 = 3 2086 = 0
2007 = 2 2027 = 3 2047 = 0 2067 = 0 2087 = 1
2008 = 4 2028 = 4 2048 = 6 2068 = 1 2088 = 3
2009 = 3 2029 = 1 2049 = 1 2069 = 1 2089 = 0
2010 = 4 2030 = 6 2050 = 3 2070 = 3 2090 = 5
2011 = 2 2031 = 1 2051 = 1 2071 = 0 2091 = 1
2012 = 6 2032 = 3 2052 = 2 2072 = 6 2092 = 1
2013 = 1 2033 = 2 2053 = 0 2073 = 0 2093 = 1
2014 = 3 2034 = 1 2054 = 4 2074 = 0 2094 = 0
2015 = 3 2035 = 2 2055 = 2 2075 = 2 2095 = 1
2016 = 4 2036 = 6 2056 = 4 2076 = 1 2096 = 4
2017 = 1 2037 = 0 2057 = 1 2077 = 2 2097 = 0
2018 = 5 2038 = 1 2058 = 0 2078 = 2 2098 = 1
2019 = 1 2039 = 1 2059 = 0 2079 = 0 2099 = 2
2020 = 5 2040 = 5 2060 = 6 2080 = 4
Questa è una sfida di code-golf , vince il conteggio di byte più basso in ogni lingua.
Il pre-calcolo e la semplice ricerca delle risposte è normalmente escluso dalle nostre regole di scappatoia , ma lo autorizzo esplicitamente per questa sfida. Permette alcune interessanti strategie alternative, sebbene non sia probabile che un elenco di ricerca di 98 elementi da 99 sarà il più breve.