题目描述
某日,国家安全局获得一份珍贵的材料,上面记载了一个即将进行的恐怖活动的信息。不过,国家安全局没法获知具体的时间,因为材料上的时间使用的是LINUX的时间戳,即是从2011年1月1日0时0分0秒开始到该时刻总共过了多少秒。此等重大的责任现在落到了小明的肩上,给出小明该时间戳,小明能计算出恐怖活动在哪一天实施吗?(为了简单起见,规定一年12个月,每个月固定都是30天)。
输入
仅一行。一个整数n(0≤n<2147483647),表示从2011年1月1日0时0分0秒开始到该时刻过了n秒。
输出
仅一行。三个整数y、m、d,分别表示恐怖活动在y年m月d日实施。
样例输入
130432457
样例输出
2015 3 10
代码如下
#include<stdio.h>
int main()
{
int n, y = 2011, m = 1, d;
scanf("%d", &n);
d = 1 + n / 60 / 60 / 24;//把小时数化成天数
while (d > 30)//把天数转成月数
{
m++;
d = d - 30;
}
while (m > 12)//把月数转成年数
{
y++;
m = m - 12;
}
printf("%d %d %d", y, m, d);//天数加上原来就有的一天
return 0;
}