藍橋杯 演算法提高 日期計算

2021-06-28 17:15:18 字數 736 閱讀 7220

這種型別的問題其實不難,就是要考慮的方面多一些。大概的解決辦法就是先把兩個年份之間的天數算出來,在精確求出該年份內的天數(起始日期定為***x年1月1日比較好算)。注意要分為在起始日期之前還是之後,這得分開算。

#include using namespace std;

bool isleapyear(int y)

else if(y % 4 == 0 && y %100 != 0)

else

return false;

}int month(int m)

}int main()

for(i = 1;i < m;i++)

if(isleapyear(y) && m >= 2)

sum-=1;

sum = sum - d + 2;

}else if(y > 2011)

for(i = 1;i < m;i++)

if(isleapyear(y) && m >= 2)

sum+=d;

}else

sum+=d;

}sum--;

sum %= 7;

int result = 0,name = 5;

for(i = 1;i < 11;i++)

result+=10;

result%=7;

while(result > 0)

if(y < 2011)

}else

}cout<

藍橋杯 演算法提高 日期計算

問題描述 已知2011年11月11日是星期五,問yyyy年mm月dd日是星期幾?注意考慮閏年的情況。尤其是逢百年不閏,逢400年閏的情況。輸入格式 輸入只有一行 yyyy mm dd 輸出格式 輸出只有一行 w 資料規模和約定 1599 yyyy 2999 1 mm 12 1 dd 31,且確保測試...

藍橋杯 演算法提高 日期計算

author chenmingdong 問題描述 已知2011年11月11日是星期五,問yyyy年mm月dd日是星期幾?注意考慮閏年的情況。尤其是逢百年不閏,逢400年閏的情況。通過電腦諮詢到2016年1月1日也是 星期五 include int judge int year int get yea...

藍橋杯演算法提高 日期計算

問題描述 已知2011年11月11日是星期五,問yyyy年mm月dd日是星期幾?注意考慮閏年的情況。尤其是逢百年不閏,逢400年閏的情況。輸入格式 輸入只有一行 yyyy mm dd 輸出格式 輸出只有一行 w 資料規模和約定 1599 yyyy 2999 1 mm 12 1 dd 31,且確保測試...