题目描述
题目格式要求yyyy-mm-dd:
printf(“%04d-%02d-%02d\n”,y,m,d);
未知输入行数:
while(scanf(“%d %d”,&y,&d) != EOF){}
样例
#include <bits/stdc++.h>
using namespace std;
int y,d;
int main(){
// cin >> y >> d;
int m1[12] = {31,29,31,30,31,30,31,31,30,31,30,31};
int m2[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
while(scanf("%d %d",&y,&d) != EOF){
int m = 1;
if( (y % 4 == 0 && y % 100 != 0) || y % 400 == 0){
for(int i=0;i<12;i++){
if(d - m1[i] > 0){
d = d - m1[i];
m ++;
}
else{
break;
}
}
}
else{
for(int i=0;i<12;i++){
if(d - m2[i] > 0){
d = d - m2[i];
m ++;
}
else{
break;
}
}
}
printf("%04d-%02d-%02d\n",y,m,d);
}
return 0;
}
算法1
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla