传送门
对于每一个八位日期,检查连续的三位是否是顺子.
Code:
#include <bits/stdc++.h>
using i64 = long long;
constexpr int monthday[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int main() {
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
int year = 2022;
int ans = 0;
for (int month = 1; month <= 12; month++) {
for (int day = 1; day <= monthday[month]; day++) {
std::vector<int> digits;
//vector用来存储日期的每一位数字
int sum = year * 10000 + month * 100 + day * 1;
//转化为8位
while (sum) {
digits.push_back(sum % 10);
sum /= 10;
}
std::reverse(digits.begin(), digits.end(