Любой месяц, который начинается с воскресенья, имеет пятницу тринадцатого. Возможны только 14 комбинаций, зная, в какой день наступает первое число года (с високосным годом или без него, а также с солнцем). Вы должны просто рассчитать это один раз и покончить с этим. Вы можете проверить только 14 * 12 возможных месяцев, с разумом.
элемент таблицы результатов (с 2009, 2010):
[Thursday,false] => Feb, March, Nov
[Friday,false] => Aug
чтобы заполнить таблицу, у вас есть общий месяц январь (31), февраль (28) ... и затем итерируйте с семенем каждого дня недели, отмечая месяцы, начинающиеся с воскресенья, а также високосный год без. Довольно прямо, и когда вы закончите, вы можете поделиться им с нами:)