奢做品二手 哪个网站好有赞微商城网页版
给出年份 y和一年中的第 d天,算出第 d天是几月几号。
 输入格式
 输入包含多组测试数据。
 每组数据占一行,包含两个整数 y 和 d。
 输出格式
 每组数据输出一行一个结果,格式为 yyyy-mm-dd。
 数据范围
 输入最多包含 100 组数据,
 1≤y≤3000,
 1≤d≤366,
 数据保证合法。
 输入样例:
 2000 3
 2000 31
 2000 40
 2000 60
 2000 61
 2001 60
 输出样例:
 2000-01-03
 2000-01-31
 2000-02-09
 2000-02-29
 2000-03-01
 2001-03-01
#include<iostream>
using namespace std;
int mouth[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int is_run(int y) //闰年
{if((y%4==0&&y%100)||y%400==0)return 1;return 0;
}
int day(int y,int m) //每个月多少天
{if(m==2) return mouth[m]+is_run(y);return mouth[m];
}
int main()
{int y,s;while(cin>>y>>s){int m=1,d=1;s--;while(s--){if(++d>day(y,m)) //如果大于这个月的天数,月数加1,天数为0{d=1;if(++m>12) //如果大于月数,年数加1{m=1;y++;}}}printf("%04d-%02d-%02d\n",y,m,d);}return 0;
}
