#include <iostream>
using
namespace
std;
bool
IsRound(
int
year){
if
((year%100)&&(year%4==0))
return
1;
if
((year%100==0)&&(year%400==0))
return
1;
return
0;
}
int
main() {
int
n;
int
year_s[2]= {365*24*60*60, 366*24*60*60};
int
month_s[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31},
{31,29,31,30,31,30,31,31,30,31,30,31}};
int
day_s = 24*60*60;
int
hour_s = 60*60;
int
minute_s = 60;
while
(cin>>n){
int
temp = n;
int
year=1970;
int
month=1;
int
day=1;
int
hour=0;
int
minute=0;
int
second=0;
while
(temp>=60){
int
flag= IsRound(year);
if
(temp>=year_s[flag]) { year++; temp-=year_s[flag]; }
else
if
(temp>=day_s){
int
days = temp/day_s;
temp=temp%day_s;
int
i=0;
int
flag = IsRound(year);
int
hh=31;
while
(days>=hh){
days-=month_s[flag][i++];
hh=month_s[flag][i];
}
month+= i;
day+=days;
}
else
if
(temp>=hour_s){
hour=temp/hour_s;
temp%=hour_s;
}
else
if
(temp>=minute_s){
minute = temp/minute_s;
temp%=minute_s;
}
}
second = temp;
cout<<year<<
"-"
;
if
(month/10==0) cout<<
"0"
;
cout<<month<<
"-"
;
if
(day/10==0) cout<<
"0"
;
cout<<day<<
" "
;
if
(hour/10==0) cout<<
"0"
;
cout<<hour<<
":"
;
if
(minute/10==0) cout<<
"0"
;
cout<<minute<<
":"
;
if
(second/10==0) cout<<
"0"
;
cout<<second<<endl;
}
return
0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2014-05-13 VC中利用多线程技术实现线程之间的通信