5 条题解
-
-2
#include
using namespace std;
int bgyear,bgmonth,bgday;
int enyear,enmonth,enday;
int month[21]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int rmonth[21]={0,31,29,31,30,31,30,31,31,30,31,30,31};
int flag=1;
int tot=0;
int dow=1;
string week[8]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
int main(){
cin>>enyear>>enmonth;
bgyear=1900;
bgmonth=1;
bgday=1;
for(int i=1900;i<=enyear;i++){
if((i%40&&i%100!=0)||(i%4000)){
for(int j=1;j<=12;j++){
for(int k=1;k<=rmonth[j];k++){
if(ienyear&&jenmonth){
int bj=0;
cout<<"Sun Mon Tue Wed Thu Fri Sat"<<endl;
for(int i=1;i<=dow;i++){
if(dow7)break;
bj++;
for(int i=1;i<=3;i++)
cout<<" ";
cout<<" ";
}
for(int k=1;k<=rmonth[j];k++){
if(k<10){
if(bj!=6&&k!=rmonth[j])
cout<<" "<<k<<" ";
else{
cout<<" "<<k;
}
bj++;
if(bj7){
cout<<endl;
bj=0;
}
}
else{
if(bj!=6&&k!=rmonth[j]) cout<<" "<<k<<" "; else { cout<<" "<<k; } if(krmonth[j])return 0; bj++; if(bj7) { cout<<endl; bj=0; } } } return 0; }//边界条件 dow++; if(dow8) dow=1; } } }//闰年 else { for(int j=1;j<=12;j++) { for(int k=1;k<=month[j];k++) { if(ienyear&&jenmonth) { int bj=0; cout<<"Sun Mon Tue Wed Thu Fri Sat"<<endl; for(int i=0;i<=dow-1;i++) { if(dow7)break; if(bj6)break; bj++; for(int i=1;i<=3;i++) cout<<" "; cout<<" "; }//确定第一个数的位置 for(int k=1;k<=month[j];k++) { if(k<10) { if(bj!=6&&k!=month[j]) cout<<" "<<k<<" "; else { cout<<" "<<k; } bj++; if(bj7) { cout<<endl; bj=0; } } else { if(bj!=6&&k!=month[j]) cout<<" "<<k<<" "; else { cout<<" "<<k; } bj++; if(bj7) { cout<<endl; bj=0; } if(kmonth[j])return 0; } } return 0; }//边界条件 dow++; if(dow==8) dow=1; } } } } }
信息
- ID
- 1090
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 7
- 标签
- 递交数
- 230
- 已通过
- 55
- 上传者