Как тестируются задачи

Вам нужно написать программу, которая содержит только требуемую функцию (можно несколько функций, если одна функция будет вызывать другую). Программа не должна содержать никакого кода вне функций.

В тестирующей системе после вашей программы будет добавлен следующий код, после чего решение будет проверено на тестах.

Задание C

int main()
{
    date d;
    cin >> d;
    cout << d.to_text() << endl;
    cerr << d.to_text() << endl;
    return 0;
}

Задание D

int main()
{
    date d;
    string s;
    getline(cin, s);
    d.from_text(s);
    cout << d << endl;
    cout << "=== END ===" << endl;
    cerr << d << endl;
    return 0;
}

Задание E

#define TEST(cond) {if (!(cond)) cout << "Condition \""#cond"\" failed\n";}
int main()
{
    date a, b;
    cin >> a >> b;
    cout << a << endl << b << endl;
    cout << boolalpha;
    cout << (a == b) << endl;
    cout << (a != b) << endl;
    cout << (a < b) << endl;
    cout << (a <= b) << endl;
    cout << (a > b) << endl;
    cout << (a >= b) << endl;
    cout << a << endl << b << endl;
    return 0;
}

Задание F

#define TEST(cond) {if (!(cond)) cout << "Condition \""#cond"\" failed\n";}
int main()
{
    date saved, incremented, result;
    while (cin >> saved)
    {
        incremented = saved;
        result = ++incremented;
        TEST(saved != incremented);
        TEST(!(saved == incremented));
        TEST(saved != result);
        TEST(!(saved == result));
        TEST(result == incremented);
        TEST(!(result != incremented));
        cout << incremented << endl;
    }
    return 0;
}

Задание G

#define TEST(cond) {if (!(cond)) cout << "Condition \""#cond"\" failed\n";}
int main()
{
    date saved, decremented, result;
    while (cin >> saved)
    {
        decremented = saved;
        result = decremented--;
        TEST(saved == result);
        TEST(saved != decremented);
        TEST(result != decremented);
        TEST(decremented < saved);
        TEST(!(decremented >= saved));
        TEST(decremented <= saved);
        TEST(!(decremented > saved));
        TEST(saved > decremented);
        TEST(!(saved <= decremented));
        TEST(saved >= decremented);
        TEST(!(saved < decremented));
        cout << decremented << endl;
    }
    return 0;
}

Задание H

#define TEST(cond) {if (!(cond)) cout << "Condition \""#cond"\" failed\n";}
int main()
{
    date a, b;
    cin >> a >> b;
    cout << b - a << endl;
    return 0;
}

Задание I

#define TEST(cond) {if (!(cond)) cout << "Condition \""#cond"\" failed\n";}
int main()
{
    date a;
    cin >> a;
    cout << a.day_of_the_week() << endl;
    return 0;
}

Задание J

int main()
{
    int n;
    date a;
    cin >> n;
    for (int i = 0; i < n; ++i)
    {
        cin >> a;
        cout << (int)a << "\n";
    }
    return 0;
}

Задание K

int main()
{
    int n;
    date a, b;
    cin >> n;
    for (int i = 0; i < n; ++i)
    {
        cin >> a >> b;
        cout << b - a << "\n";
    }
    return 0;
}

Задание L

int main()
{
    int n;
    int a;
    cin >> n;
    for (int i = 0; i < n; ++i)
    {
        cin >> a;
        cout << date(a) << "\n";
    }
    return 0;
}

Задание M

int main()
{
    int tst;
    cin >> tst;
    while (tst--)
    {
        date a, b;
        cin >> a >> b;
        int n = a - b;
        cout << n << "\n";
        cout << a << "\n" << b << "\n";
        cout << b + n << "\n";
        cout << b << "\n";
        cout << a - n << "\n";
        cout << a << "\n";
        a -= n;
        cout << a << "\n";
        a += n;
        cout << a << "\n";
    }
    return 0;
}