#include<iostream>
#include<stdio.h>
#include<math.h>
#include<algorithm>
using namespace std;
#define ll long long
#define ull unsigned long long
int days[2][13] = {{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}};
bool check(int year)
{
if(year%400==0|| year%100!=0 &&year%4==0)
{
return 1;
}
else return 0;
}
int get_sum(int year ,int mon,int day)
{
int sum=0;
sum+=day;
if(mon>=3&&check(year))
{
sum++;
}
for(int i=1;i<mon;i++)
{
sum+=days[0][i];
}
return sum;
}
int main()
{
int year,mon,day,k;
while(~scanf("%d%d%d%d",&year,&mon,&day,&k))
{
int sum=get_sum(year,mon,day);
mon=1;
sum+=k;
int flag=0;
if(check(year))
{
flag=1;
}
int mm=1;
while(sum>days[flag][mm])
{
flag=0;
if(check(year))
{
flag=1;
}
sum-=days[flag][mm];
mm++;
mon++;
if(mm==13)
{
mm=1;
mon=1;
year++;
flag=0;
if(check(year))
{
flag=1;
}
}
}
day=sum;
printf("%04d-%02d-%02d\n",year,mon,day);
}
}
[蓝桥杯2015初赛]星系炸弹
最新推荐文章于 2022-02-18 17:18:55 发布