为什么
  • 板块灌水区
  • 楼主一咕咕一
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/12/28 12:51
  • 上次更新2024/12/28 12:55:30
查看原帖
为什么
772815
一咕咕一楼主2024/12/28 12:51

为什么64pts

玄3关!!!!!!!!!!!!!!!

my code:

#include <bits/stdc++.h>
using namespace std;
int a[5], b[5], c[5];
set<tuple<int, int, int>> ans;
int month[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
bool check(int y, int m, int d)
{
    if (y < 1960 || y > 2059 || m > 12 || m < 1 || d > 31 || d < 1)
        return 0;
    if (y % 4 == 0 && y % 100 || y % 400 == 0)
        month[2] = 29;
    else
        month[2] = 28;
    if (d > month[m])
        return 0;
    return 1;
}
void print(int a[])
{
    int y = 19 * 100 + a[1], m = a[2], d = a[3];
    if (check(y, m, d))
        ans.insert({y, m, d});
    y = 20 * 100 + a[1];
    if (check(y, m, d))
        ans.insert({y, m, d});
}
int main()
{
    // freopen(".in", "r", stdin);
    // freopen(".out", "w", stdout);
    scanf("%d/%d/%d", &a[1], &a[2], &a[3]);
    b[1] = a[2];
    b[2] = a[3];
    b[3] = a[1];
    c[1] = a[3];
    c[2] = a[2];
    c[3] = a[1];
    print(a);
    print(b);
    print(c);
    for (auto x : ans)
        printf("%04d-%02d-%02d\n", get<0>(x), get<1>(x), get<2>(x));
    return 0;
}

2024/12/28 12:51
加载中...