第四届蓝桥杯第一题

xiaoxiao2021-02-28  102



第一题:

题目标题: 高斯日记     大数学家高斯有个好习惯:无论如何都要记日记。     他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210     后来人们知道,那个整数就是日期,它表示那一天是高斯出生后的第几天。这或许也是个好习惯,它时时刻刻提醒着主人:日子又过去一天,还有多少时光可以用于浪费呢?     高斯出生于:1777年4月30日。          在高斯发现的一个重要定理的日记上标注着:5343,因此可算出那天是:1791年12月15日。     高斯获得博士学位的那天日记上标着:8113        请你算出高斯获得博士学位的年月日。 提交答案的格式是:yyyy-mm-dd, 例如:1980-03-21

#include<iostream> #include<cstdio> using namespace std; int day1[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; int day2[13]={0,31,29,31,30,31,30,31,31,30,31,30,31}; int main() { int y=1777; int m,d; int sum=8113; if(y%4==0&&y0!=0||y@0==0) { for(int i=5;i<=12;i++) { sum-=day2[i]; } } else { for(int i=5;i<=12;i++) { sum-=day1[i]; } } y=1778; while(sum>365) { y++; if(y%4==0&&y0!=0||y@0==0) sum-=366; else sum-=365; } if(y%4==0&&y0!=0||y@0==0) { while(sum>31) { sum-=day2[m]; m++; } } else { while(sum>31) { sum-=day1[m]; m++; } } printf("%d-d-d",y,m,sum); }

转载请注明原文地址: https://www.6miu.com/read-51896.html

最新回复(0)