题目问答
题目问答简介
问题出在哪了捏
```cpp
#include<bits/stdc++.h>
using namespace std;
int m1[]={0,1,3,5,7,8,10,12};//数组m1存储大月
int m2[]={0,4,6,9,11};//数组m2存储小月
map<int,int> bh={{0,13},{1,1},{2,2},{3,3},{4,5},{5,4},{6,4},{7,2},{8,2},{9,2}};
int sum(int year,int month,int day){
int y1=year%10,y2=year%100,y3=year%1000,y4=year/1000;
int m1=month%10,m2=month/10;
int d1=day%10,d2=day/10;
int n=0;
n=bh[y1]+bh[y2]+bh[y3]+bh[y4]+bh[m1]+bh[m2]+bh[d1]+bh[d2];
return n;
}
int main(){
int num=0;
int year=2000,month=1,day=1;
int year2=2024,month2=4,day2=13;
while(1){
if(sum(year,month,day)>50) num++;
day++;
for(int j=1;j<=7;j++){
if(month==m1[j]&&day==32){
month++;
day=1;
break;
}
}
for(int j=1;j<=4;j++){
if(month==m2[j]&&day==31){
month++;
day=1;
break;
}
}
if(month==2){
if((year%4==0&&year%100!=0)||year%400==0){
if(day==30){
month++;
day=1;
}
}else{
if(day==29){
month++;
day=1;
}
}
}
if(month==13){
month=1;
year++;
}
if(year==year2&&month==month2&&day==day2) break;
}
cout<<num<<endl;
return 0;
}
```
查看全文
2
0
0
23



