返回题解分享
讨论 / 题解分享/ 帖子详情

日期统计(结果填空) - 题解

#include<bits/stdc++.h>
using namespace std;
int a[101];
int cnt;
int main()
{
    for(int i=1;i<=100;i++)
    {
        cin>>a[i];
    }
    char str[8];
    for(int year=2023;year<=2023;year++)
    for(int month=1;month<=12;month++)
    for(int day=1;day<=31;day++)
    {
        if(month==1||month==3||month==5||month==7||month==8
        ||month==10||month==12);
        else if(month==2)
        {
            if(year%4==0&&year%100!=0||year%400==0)
            {
                if(day>29) break;
            }
            else
            {
                if(day>28) break;
            }
        }
        else
        {
            if(day>30) break;
        }
        sprintf(str,"%d%02d%02d",year,month,day);
        int m=0;
        for(int n=1;n<=100;n++)
        {
            if(a[n]==(str[m]-'0'))
            {
                m++;
                if(m==8)
                {
                    cnt++;
                    break;
                }
            }
        }
    }
    cout<<cnt;
    return 0;
}
0 回复 0 转发 0 喜欢 4 阅读
回复 (0)
默认 最新
暂无回复,快来抢沙发!