Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: cheetah

Problemset: E.Comet

Language: cpp

Time: 0.002 second

Submitted On: 2026-07-11 23:39:31

#include<bits/stdc++.h>
using namespace std;

int main () {
    ios_base::sync_with_stdio(0);
    cin.tie(0);

    int d, m, y, t, n;
    cin >> d >> m >> y >> t >> n;
    int x = 366, ar[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}, sum = t * n;

    if (y % 400 == 0) {
        x = 366;
    }
    else if (y % 100 != 0 and y % 4 == 0) {
        x = 366;
    }
    else{
        x = 365;
    }
    if (m == 2 and x == 366 and sum > ar[m] - d + 2) {
        sum -= ar[m] - d + 2;
        ++m;
        d = 1;
    }
    else if (sum > ar[m] - d + 1) {
        sum -= ar[m] - d + 1;
        ++m;
        d = 1;
    }
    m = m % 12;
    // cout << d << " " << m << " " << y << " " << sum << "\n";

    while (m % 12 != 1 and sum >= ar[m]) {
        if (m == 2 and x == 366 and sum > ar[m] + 1) {
            sum -= ar[m] + 1;
            ++m;
        }
        else if (sum > ar[m]) {
            sum -= ar[m];
            ++m;
        }
        // cout << "sum = " << sum << "\n";
    }
    if (sum != 0) {
        m = 1;
        ++y;
    }
    // cout << d << " " << m << " " << y << " " << sum << "\n";


    while (sum >= x) {
        if (y % 400 == 0) {
            x = 366;
        }
        else if (y % 100 != 0 and y % 4 == 0) {
            x = 366;
        }
        else{
            x = 365;
        }
        if (sum > x) {
            sum -= x;
            ++y;
        }
    }
    // cout << d << " " << m << " " << y << " " << sum << "\n";

    if (y % 400 == 0) {
        x = 366;
    }
    else if (y % 100 != 0 and y % 4 == 0) {
        x = 366;
    }
    else{
        x = 365;
    }
    // cout << d << " " << m << " " << y << " " << sum << "\n";
    while (sum >= ar[m]) {
        if (m == 2 and x == 366 and sum > ar[m] + 1) {
            sum -= ar[m] + 1;
            ++m;
        }
        else if (sum > ar[m]) {
            sum -= ar[m];
            ++m;
        }
    }
    // cout << d << " " << m << " " << y << " " << sum << "\n";

    cout << sum + d << " " << m << " " << y;

    return 0;
}