local calc = (function () local t = {} return function (n) if t[n] ~= nil then return t[n] else local s = tostring(n) local r = tonumber(s:sub(1,1)) if s:sub(2,2) ~= "" then r = r + tonumber(s:sub(2,2)) end t[n] = r return r end end end)() function count(m, d, r) if d > 0 then return count(m, d-1, m == calc(d) and r+1 or r) end return r end local t = {31; 28; 31; 30; 31; 30; 31; 31; 30; 31; 30; 31} local r = 0 for i,v in ipairs(t) do r = r + count(i, v, 0) end print(r)