目录
  1. 1. 时间转换
    1. 1.1. 问题描述
      1. 1.1.0.1. 输入格式
      2. 1.1.0.2. 输出格式
      3. 1.1.0.3. 数据范围
      4. 1.1.0.4. 输入样例:
      5. 1.1.0.5. 输出样例:
  2. 1.2. 问题分析
  3. 1.3. 代码实现
  4. 1.4. 运行结果
  5. 1.5. 总结
时间转换

时间转换

问题描述

读取一个整数值,它是工厂中某个事件的持续时间(以秒为单位),请你将其转换为小时:分钟:秒来表示。

输入格式

输入一个整数N。

输出格式

输出转换后的时间表示,格式为“hours:minutes:seconds”。

数据范围

$1≤N≤1000000$

输入样例:

556

输出样例:

0:9:16

问题分析

首先要知道秒与小时、分钟的换算

1h=60min=3600s

那么,在判断小时的时候,首先考虑有多少个3600,判断分钟时候,考虑有多少个60,剩下的就是秒

代码实现

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

int main(){
//输出转换后的时间表示,格式为“hours:minutes:seconds”
long t;
int h,m;
cin>>t;
h=t/3600;//小时数
t=t%3600;
m=t/60;//分钟数
t=t%60;//秒数
cout<<h<<":"<<m<<":"<<t;

return 0;
}

运行结果

4134
1:8:54
--------------------------------

总结

这个问题与钞票问题类似,同样是将一个数逐步分解,从最大的可用数找起,直至最小。

文章作者: Jachie Xie
文章链接: https://xjc5772.github.io/2020-01/22/%E7%AE%97%E6%B3%95/%E6%97%B6%E9%97%B4%E8%BD%AC%E6%8D%A2/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 XJC&Blog
打赏
  • 微信
  • 支付宝

评论