当前位置: 首页 > news >正文

[第十二届蓝桥杯/java/算法]F——时间显示

🧑‍🎓个人介绍:大二软件生,现学JAVA、Linux、MySQL、算法 

💻博客主页:渡过晚枫渡过晚枫
👓系列专栏:[编程神域 C语言],[java/初学者],[蓝桥杯]

📖阶段目标:备战2023蓝桥杯java个人赛

 👻不能逃避,不能逃避,不能逃避,去成为更好的自己!👻


一、🍁题目描述:

小蓝要和朋友合作开发一个时间显示的网站。

在服务器上,朋友已经获取了当前的时间,用一个整数表示,值为从1970年1月1日00:00:00到当前时刻经过的毫秒数。
现在,小蓝要在客户端显示出这个时间。

小蓝不用显示出年月日,只需要显示出时分秒即可,毫秒也不用显示,直接舍去即可。
给定一个用整数表示的时间,请将这个时间对应的时分秒输出。

输入描述

输入一行包含一个整数,表示时间。

输出描述

输出时分秒表示的当前时间,格式形如 HH:MM:SS,其中

HH 表示时,值为 00​​​​ 到 2323​​​​,

MM 表示分,值为 00​​​​ 到 59​​​,

SS 表示秒,值为 00​​ 到 59​。

时、分、秒 不足两位时补前导 0。


二、🍁题目分析:

这题乍一看很复杂,但仔细就会发现其实很简单。

因为题目中说我们不需要考虑年月日和毫秒的影响,那不就等于说,我们可以把日期限定在一天嘛?

毫秒除以1000得到当前分钟的第几秒,

秒数除以60得到当前小时的第几分钟,

小时数除以24得到当前是这天中的第几个小时。

个人认为这题比较难得部分是我们该如何前导0,即当小时为7时,该如何在结果中输出07。

我们当然可以对结果进行判断,不满足条件的话,就在输出的时候加一个字符0。

但,这可行但不必要。

这时候,我想到了字符串的格式化——String.format()方法。

详情可见下面这篇文章:

JAVA字符串格式化-String.format()的使用icon-default.png?t=M85Bhttp://t.csdn.cn/lT5v9在得到秒、分和时的具体数据后,我创建了一个字符串变量Date,然后利用format方法,并搭配转换符的标志"0",这个标志的作用就是我们所需要的在数字前面补0。

例如:("04d",12)的结果就是0012,("02d",9)的结果就是09。其中的4和2代表数字的位数,若相应位没有数字,则补0。


三、🍁解题代码:

package JAVA_Lanqiao_2021;
import java.util.Scanner;

public class F
{
    public static void main(String[] args)
    {
        Scanner scan=new Scanner(System.in);
        long Ms=scan.nextLong();//接收整数时间——毫秒,1ms=0.001s
        long S=Ms/1000;//得到有多少秒
        long Minute=S/60;
        long Hour=Minute/60;
        String Date=String.format("%02d",Hour%24)+":"+String.format("%02d",Minute%60)+":"+String.format("%02d",S%60);
        System.out.println(Date);
    }
}

相关文章:

  • 做网站买阿里云的ecs服务器/怎样免费推广自己的网站
  • 外贸免费开发网站建设/看网站搜什么关键词
  • 英文站网站源码/口碑营销的优势有哪些
  • 网站开发首选畅扬科技/网站seo运营培训机构
  • 牡丹江市广告公司/沈阳seo收费
  • 济南网站建设开发公司哪家好/网络营销推广实战宝典
  • 多维表需求管理表自动生成TAPD需求
  • shell总结
  • C++【LRU】
  • SMT工厂及PCB工程师的福音!可视化BOM交互焊接工具来了
  • 阿里「杀手锏」级语音识别模型来了!推理效率较传统模型提升10倍,已开源
  • 算力网络可编程服务路由策略的分析与探讨
  • 矽昌-- Station 模式支持
  • 伦茨LENZE GDC操作指南
  • 全钢药品柜的技术参数包括哪些特点
  • Treap树堆
  • PMAC的PVT功能实现解析笔记
  • 小结 | 支持向量机 (SVM)