2024/1/16蒟蒻的求助
查看原帖
2024/1/16蒟蒻的求助
1004888
Genius_physicist楼主2024/1/16 21:33
#include <bits/stdc++.h>
using namespace std;
#define LL long long
int day[13]={0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int week(int x){
	int days = 0;
    int weekday = 1;//1900年1月1日是星期一
    for (int y = 1900; y < x; y++) {
        if ((y % 4 == 0 && y % 100 != 0) || (y % 400 == 0)) {
            days += 366;
        } else {
            days += 365;
        }
    }
    weekday = (weekday + days) % 7;
    if(weekday == 0)
    	weekday = 7;
    return weekday;
}
signed main(){
	int x, y;
	cin >> x >> y;
	int sum = week(x), ans = 0;
	for(int i = x; i <= y; i++){
		if(i % 400 == 0 || (i % 4 == 0 && i % 100 != 0))
			sum += 1;
		for(int j = 1; j <= 12; j++){
			if(j != 11)
				sum += day[j];
			else{
				sum += 11;
				if(sum % 7 == 6 || sum % 7 == 0)
					ans++;
				sum += 19;
			}
		}
	}
	cout << ans;
	return 0;
}

40分好吧,神mou帮改一下……

2024/1/16 21:33
加载中...