时间显示【第十二届】【省赛】【B组】
资源限制
内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s
#include<iostream>
using namespace std;
int main()
{
long long n;
cin >> n;
long long nn = n / 1000;//把毫秒换为秒
int k;//某天从0点经过的秒数n;
k = nn % (24 * 60 * 60);
int h, m, s;
s = k % 60;
m = (k / 60) % 60;
h = (k / 3600) % 60;
printf("%02d:%02d:%02d", h, m, s);
}
思路:
非常一般的一道题 ,可能对于小白来说的难点就是输出格式的控制
首先,题上输入的数是以毫秒为单位,我们先把它换位秒,1秒=1000毫秒,题目要求我们求出时分秒,日期就可以忽略了,我们可以求出每天的秒数,再对输入的数取模,然后定义h,m,s三个变量,分别代表时,分,秒(second)再取模求出,赋值即可,最cout后就是输出格式的控制了,这道题用cout输出估计会相当麻烦,我们可以用printf,在“”里用%02d进行格式控制