1 条题解

  • 0
    @ 2025-7-16 20:26:23
    #include <bits/stdc++.h>
    using namespace std;
    int n;
    int cnt[8];
    int y,m,d,w;
    int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
    int main()
    {
    	cin>>n;
    	memset(cnt,0,sizeof(cnt));
    	y=1900,m=1,d=1,w=1;
    	//1900+n-1,12,31
    	while(y<1900+n){
    		//校正2月天数
    		if(y%4==0&&y%100!=0||y%400==0){
    			month[2]=29;
    		}else{
    			month[2]=28;
    		}
    		//计数
    		if(d==13){
    			cnt[w]++;
    		}
    		//下一天
    		d++;
    		if(d>month[m]){
    			m++;
    			d=1;
    		}
    		if(m>12){
    			y++;
    			m=1;
    		}
    		w++;
    		if(w>7){
    			w=1;
    		}
    	}
    	cout<<cnt[6]<<" ";
    	cout<<cnt[7]<<" ";
    	cout<<cnt[1]<<" ";
    	cout<<cnt[2]<<" ";
    	cout<<cnt[3]<<" ";
    	cout<<cnt[4]<<" ";
    	cout<<cnt[5]<<endl;
    	return 0;
    }
    

    信息

    ID
    926
    时间
    1000ms
    内存
    125MiB
    难度
    4
    标签
    递交数
    51
    已通过
    26
    上传者