d072 - 格瑞哥里的煩惱 (Case 版)
題目描述
題目要求判斷給定的年份是否為閏年,並根據格里曆的規則輸出結果。格里曆的閏年規則為:能被4整除但不能被100整除的年份,以及能被400整除的年份,都是閏年。
解題思路
程式碼使用迴圈讀取多組年份,對於每個年份,使用條件判斷式檢查是否符合閏年的條件。如果年份能被4整除且不能被100整除,或者能被400整除,則判斷為閏年,否則判斷為平年。程式會輸出對應的結果,並在每組測試資料前加上 "Case i: ",其中 i 是測試資料的編號。
複雜度分析
- 時間複雜度: O(n),其中 n 是輸入的年份數量。因為程式需要迴圈讀取並處理每個年份。
- 空間複雜度: O(1),程式只使用了常數級別的額外空間來儲存變數,例如年份和計數器。
程式碼
#include <stdio.h>
int main(){
int a=0,b=1;scanf("%d",&a);
while(scanf("%d",&a)>0){
if((a%4==0&&a%100!=0)||a%400==0)
printf("Case %d: a leap year\n",b);
else
printf("Case %d: a normal year\n",b);b++;
}
}