Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <string.h>
- #include <time.h>
- enum
- {
- ST_YEAR = 25,
- ST_MON = 9,
- ST_DAY = 7,
- YEAR = 1900,
- SEC_IN_YEAR = 31104000,
- SEC_IN_MONTH = 2592000,
- MONTH = 12,
- SEC = 86400,
- DAY = 30
- };
- int main (void)
- {
- struct tm first, sec;
- memset(&first, 0, sizeof(first));
- memset(&sec, 0, sizeof(sec));
- first.tm_year = ST_YEAR;
- first.tm_mon = ST_MON;
- first.tm_mday = ST_DAY;
- first.tm_isdst = 1;
- while (scanf("%d%d%d", &sec.tm_year, &sec.tm_mon, &sec.tm_mday) > 0) {
- sec.tm_isdst--;
- sec.tm_year -= YEAR;
- sec.tm_mon--;
- long long differ = (long long)(difftime(mktime(&sec), mktime(&first)));
- printf ("%lld %lld %lld\n", differ / SEC_IN_YEAR + 1, (differ / SEC_IN_MONTH) % MONTH + 1, (differ / SEC) % DAY + 1);
- memset(&sec, 0, sizeof(sec));
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement