《算法笔记》3.4小节——入门模拟->日期处理
D无难度,注意格式是yyyy-mm-dd,年也是要补足的,样例里面没有提醒但是自己要注意啊!!
#include<stdio.h> int month[13][2]={0,0,31,31,28,29,31,31,30,30,31,31,30,30,31,31,31,31,30,30,31,31,30,30,31,31}; bool isrun(int year) { if((year%4==0 && year%100!=0) || year%400==0) return true; return false; } int main() { int y,n; while(scanf("%d %d",&y,&n)!=EOF) { int i=1; while(n-month[i][isrun(y)]>0) { n=n-month[i][isrun(y)]; i++; if(i==13) { i=1; y++; } } printf("%04d-%02d-%02d\n",y,i,n); } return 0; }