2013第四屆藍橋杯省賽C++A組【第一題:高斯日記】
第一題
標題:高斯日記
題目描述:
大數學家高斯有個好習慣:無論如何都要記日記。他的日記有個與眾不同的地方,他從不註明年月日,而是用一個整數代替,比如:4210。後來人們知道,那個整數就是日期,它表示那一天是高斯出生後的第幾天。這或許也是個好習慣,它時時刻刻提醒著主人:日子又過去一天,還有多少時光可以用於浪費呢?
高斯出生於:1777年4月30日。在高斯發現的一個重要定理的日記上標註著:5343,因此可算出那天是:1791年12月15日。
高斯獲得博士學位的那天日記上標著:8113。請你算出高斯獲得博士學位的年月日。
輸入格式
在一行輸入一個整數n
輸出格式
輸出高斯出生n天后的日期 ,例如:1980-03-21
輸入樣例
5343
輸出樣例
1791-12-15
解析:
1.當月份是12 日期是32時年份進位再把月日歸1
2.大月在日期是32時月份進位再把日期歸1
3.小月是31時月份進位再把日期歸1
4.閏年2月在日期為30時月份進位再把日期歸1 ⑤平年2月在日期為29時月份進位再把日期歸1
#include <bits/stdc++.h>
using namespace std;
bool isLeapYear(int y)
{
return (y%4==0 && y%100!=0) || (y%400 == 0);
}
int main()
{
ios::sync_with_stdio(false);
cin.tie(0),cout.tie(0);
int y = 1777,m = 4,d = 30;
int n;
cin >> n;
while(--n)
{
d++;
if(m==12 && d==32) //過年啦~
{
y++;
m = 1;
d = 1;
continue;
}
if((m==1 || m==3 || m==5 || m==7 || m==8 || m==10) && d==32) //大月進入下一個月
{
m++;
d = 1;
continue;
}
if((m==4 || m==6 || m==9 || m==11) && d==31) //小月進入下一個月
{
m++;
d = 1;
continue;
}
if(m==2 && isLeapYear(y) && d==30) //閏年2月進入下一月
{
m++;
d = 1;
continue;
}
if(m==2 && !isLeapYear(y) && d==29) //平年2月進入下一月
{
m++;
d = 1;
continue;
}
}
cout << y << "-" << m << "-" << d << endl;
return 0;
}
相關文章
- 2013藍橋杯題解c++A組C++
- 第九屆藍橋杯省賽C++A組 倍數問題(dfs)C++
- 2013年第四屆藍橋杯省賽試題及詳解(Java本科C組)Java
- 2013第四屆藍橋杯省賽C++B組【第六題:三部排序】C++排序
- 藍橋杯省賽真題2013題解
- 第十三屆藍橋杯省賽A組
- 第六屆藍橋杯省賽CC++B組C++
- 2015年藍橋杯六屆省賽大學B組真題
- 2018第九屆藍橋杯省賽C++B組【第四題:測試次數】C++
- 2017省賽藍橋杯B組
- 2018藍橋杯省賽B組
- 藍橋杯第五屆省賽題目及題解
- 第九屆藍橋杯B組省賽———乘積最大
- 2016年藍橋杯C/C++組省賽第四題--快速排序C++排序
- 藍橋杯__省賽__第七屆__C/C++__大學A組C++
- 藍橋杯__省賽__第八屆__C/C++__大學A組C++
- 藍橋杯__省賽__第九屆__C/C++__大學A組C++
- 第十三屆藍橋杯省賽C/C++ B組C++
- 第十五屆藍橋杯軟體賽省賽C/C++B 組題解C++
- 第十五屆藍橋杯C++B組省賽總結C++
- 第十屆藍橋杯省賽C++B組 等差數列C++
- 第十一屆藍橋杯省賽CC++組第二場比賽C++
- 第九屆藍橋杯軟體類省賽 Java B組 題目及解析Java
- 2018年第九屆藍橋杯省賽試題及詳解(Java本科A組)Java
- 2016年藍橋杯C/C++組省賽第一題--煤球數目C++
- 2013藍橋杯題解c組C++C++
- 第14屆藍橋杯B組國賽
- 【藍橋杯考前突擊】第十屆藍橋杯省賽C/C++大學B組 試題 D 數的分解C++
- 2014年第五屆藍橋杯省賽試題及詳解(Java本科C組)Java
- 第十四屆藍橋杯省賽C++ B組(個人經歷 + 題解)C++
- 2018年第九屆藍橋杯省賽試題及詳解(Java本科B組)Java
- 2017第八屆藍橋杯C/C++ B組省賽第二題 秒解C++
- 2013年藍橋杯真題
- 試題B:小球反彈(第十五屆藍橋杯省賽B組c/c++組)C++
- 歷屆藍橋杯省賽(C、C++)的答案(轉)C++
- 第十五屆藍橋杯大賽軟體賽省賽 C/C++ 大學 A 組C++
- 2020藍橋杯省賽B組C++(第二場)真題C++
- 2016藍橋杯省賽第七題剪郵票