潇潇雨未歇 题目问答 · 2024/12/6
问题出在哪了捏
```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