题解 | #打印日期#
打印日期
https://www.nowcoder.com/practice/b1f7a77416194fd3abd63737cdfcf82b
#include <iostream> using namespace std; int main() { int a, b; while (cin >> a >> b) { // 注意 while 处理多个 case int monthall[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31}; if(b > 59 && (a % 4 == 0 && a % 100 != 0) || (a % 400 == 0)) { monthall[2] = 29; } int month = 1; int day = 0; while(b > monthall[month]) { b-=monthall[month++]; } day = b; if(day >= 10 && month >= 10) printf("%d-%d-%d",a,month,day); else if(day < 10 && month >= 10) printf("%d-%d-0%d",a,month,day); else if(day >= 10 && month <10) printf("%d-0%d-%d",a,month,day); else printf("%d-0%d-0%d",a,month,day); printf("\n"); } } // 64 位输出请用 printf("%lld")