[USACO][PROB] Section 1.1 Friday the Thirteenth

黑色星期五

翻譯 by 許胖 羔羊

黑色星期五真的是一個不尋常的事件嗎?

換個角度來說,13 日是星期五的次數,會比在其他日期還要來的少嗎?為了回答這個問題,你必須設計一個程式來計算 N 年內 13 號出現在星期一、星期二、…… 各幾次。時間的範圍從 1900 年 1 月 1 日計算至 1900 + N - 1 年 12 月 31 日止,對於每個 N 值皆不超過 400。

這裡有幾項訊息你必須知道:

  • 1900 年 1 月 1 日是星期一。
  • 4 月、7 月、9 月、11 月有 30 日,除了 2 月為 28 天外(閏年為 29 天),其餘皆為 31 天。
  • 閏年的規則:被 4 整除但不被 100 整除的為閏年,而且被 400 整除的也為閏年。舉例來說 2008 年被 4 整除,但不被 100 整除,所以為閏年;1900 年雖然被 4 和 100 整除,但不被 400 整除,所以不是閏年;2000 年被 400 整除,所以是閏年。

請勿事先計算答案!

名稱:friday

輸入格式

一行正整數 N

範例輸入 (檔案 friday.in)

1
20

輸出格式

七個由空白隔開的數字。這七個數字依序為 13 號在星期六、星期日、星期一、星期二、星期三、星期四、星期五的次數。

範例輸出 (檔案 friday.out)

1
36 33 34 33 35 35 34
,