1 条题解

  • 0
    @ 2023-6-11 12:22:22

    C++ :

    #include<iostream>
    #include<algorithm>
    using namespace std;
    int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};
    void rn(int i)
    {
    	if (i%4==0&&i%100!=0||i%400==0)
    		a[1] = 29;
    	else
    		a[1] = 28;
    }
    int main()
    {
    	int n,i,j,k,s=4,d=1,m=4,cnt=0;
    	cin>>n;
    	for (i=1998; i<=n; i++)
    	{
    		rn(i);	//判断是不是闰年
    		k=0;
    		while (1)
    		{
    			d++;	//日自增
    			m=(m+1)%7;	//0为星期7
    			if (d==13 && m==5 && i==n)//13号为星期五,且正好是输入的n年里
    			{
    				cnt++;
    			}
    			if (d==a[k])//到了月份末尾
    			{
    				d=0;
    				k++;
    				if (k>=12)//到了年末尾
    				{
    					break;
    				}
    			}
    		}
    	}
    	cout<<cnt;
    	return 0;
    }
    

    Python :

    a=int(input())
    a2=1998
    monthdays=0
    blackfriday=0
    days2=3
    days3=0
    for i in range((a-1998+1)*12):
        days3+=1
        if a2%4==0 and a2%100!=0:
            if i%12==0 or i%12==2 or i%12==4 or i%12==6 or i%12==7 or i%12==9 or i%12==11:
                monthdays=31
            elif i%12==1:
                monthdays=29
            else:
                monthdays=30
        else:
            if a2%400==0 and a2%100==0:
                if i%12==0 or i%12==2 or i%12==4 or i%12==6 or i%12==7 or i%12==9 or i%12==11:
                    monthdays=31
                elif i%12==1:
                    monthdays=29
                else:
                    monthdays=30
            else:
                if i%12==0 or i%12==2 or i%12==4 or i%12==6 or i%12==7 or i%12==9 or i%12==11:
                    monthdays=31
                elif i%12==1:
                    monthdays=28
                else:
                    monthdays=30
        for j in range(1,monthdays+1):
            days2+=1
            if days2==8:
                days2=1
            if days2==5 and j==13:
                blackfriday+=1
        if a2!=a:
            blackfriday=0
        if days3%12==0:
            days3=0
            a2+=1
    print(blackfriday)
    
    • 1

    信息

    ID
    2723
    时间
    1000ms
    内存
    512MiB
    难度
    10
    标签
    递交数
    1
    已通过
    1
    上传者