【Java|golang】2437. 有效时间的数目

news2024/12/24 2:58:55

给你一个长度为 5 的字符串 time ,表示一个电子时钟当前的时间,格式为 “hh:mm” 。最早 可能的时间是 “00:00” ,最晚 可能的时间是 “23:59” 。

在字符串 time 中,被字符 ? 替换掉的数位是 未知的 ,被替换的数字可能是 0 到 9 中的任何一个。

请你返回一个整数 answer ,将每一个 ? 都用 0 到 9 中一个数字替换后,可以得到的有效时间的数目。

示例 1:

输入:time = “?5:00”
输出:2
解释:我们可以将 ? 替换成 0 或 1 ,得到 “05:00” 或者 “15:00” 。注意我们不能替换成 2 ,因为时间 “25:00” 是无效时间。所以我们有两个选择。
示例 2:

输入:time = “0?:0?”
输出:100
解释:两个 ? 都可以被 0 到 9 之间的任意数字替换,所以我们总共有 100 种选择。
示例 3:

输入:time = “??:??”
输出:1440
解释:小时总共有 24 种选择,分钟总共有 60 种选择。所以总共有 24 * 60 = 1440 种选择。

提示:

time 是一个长度为 5 的有效字符串,格式为 “hh:mm” 。
“00” <= hh <= “23”
“00” <= mm <= “59”
字符串中有的数位是 ‘?’ ,需要用 0 到 9 之间的数字替换。

    public int countTime(String time) {
       int a=time.charAt(0)=='?'?-1:time.charAt(0)-'0',
               b=time.charAt(1)=='?'?-1:time.charAt(1)-'0',
               c=time.charAt(3)=='?'?-1:time.charAt(3)-'0',
               d=time.charAt(4)=='?'?-1:time.charAt(4)-'0';
       int res=1;
       if (a==-1){
           if (b==-1){
               res=24;
           }else {
               res=b<4?3:2;
           }
       }else if (b==-1){
           res=a<=1?10:4;
       }
       if (c==-1){
           res=d==-1?res*60:res*6;
       } else if (d==-1) {
           res*=10;
       }
        return res;
    }

在这里插入图片描述

func countTime(time string) int {
	a,b,c,d:=-1,-1,-1,-1
	if time[0]!='?' {
		a= int(time[0] - '0')
	}
	if time[1]!='?' {
		b= int(time[1] - '0')
	}
	if time[3]!='?' {
		c= int(time[3] - '0')
	}
	if time[4]!='?' {
		d= int(time[4] - '0')
	}
	res:=1
	if a==-1{
		if b==-1{
			res=24
		}else {
			res=2
			if b<4 {
				res=3
			}
		}
	}else if b==-1{
		res=4
		if a<=1 {
			res=10
		}
	}
	if c==-1{
		res*=6
		if d==-1 {
			res*=10
		}
	} else if d==-1 {
		res*=10
	}
	return res
}

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/507311.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大型数据库期末总复习【SQL server 2008 基础教程】

一、概述 1.Microsoft SQL Server系统的体系结构 Microsoft SQL Server 2008系统由4个主要部分组成。这4个部分被称为4个服务&#xff0c;这些服务分别是数据库引擎、分析服务、报表服务和集成服务。这些服务之间相互存在和相互应用&#xff0c;它们的关系示意图如图所示&…

Web安全:AppScan 安装和使用.(渗透常用工具)

Web安全&#xff1a;AppScan 安装和使用. AppScan是一款web安全扫描工具&#xff0c;可以利用爬虫技术进行网站安全渗透测试&#xff0c;根据网站入口自动对网页链接进行安全扫描&#xff0c;扫描之后会提供扫描报告和修复建议等. 目录&#xff1a; Web安全&#xff1a;AppSc…

【CSS系列】第四章 · CSS字体属性

写在前面 Hello大家好&#xff0c; 我是【麟-小白】&#xff0c;一位软件工程专业的学生&#xff0c;喜好计算机知识。希望大家能够一起学习进步呀&#xff01;本人是一名在读大学生&#xff0c;专业水平有限&#xff0c;如发现错误或不足之处&#xff0c;请多多指正&#xff0…

51单片机(八)串口通信

❤️ 专栏简介&#xff1a;本专栏记录了从零学习单片机的过程&#xff0c;其中包括51单片机和STM32单片机两部分&#xff1b;建议先学习51单片机&#xff0c;其是STM32等高级单片机的基础&#xff1b;这样再学习STM32时才能融会贯通。 ☀️ 专栏适用人群 &#xff1a;适用于想要…

网易云音乐开发--video模块开发

video页面头部搭建 首先头部的结构是这样的 这里采用的是淘宝双飞翼布局。俩端固定&#xff0c;中间自适应。 这里说一下这个flex:1 flex-grow:可拉伸 flex-shrink:可压缩 flex-basis:当前元素的宽度 flex默认值:flex-grow:0,flex-shrink:1,flex-basis:auto flex:1 flex-gr…

Linux一学就会——系统文件I/O

Linux一学就会——系统文件I/O 有几种输出信息到显示器的方式 #include <stdio.h> #include <string.h> int main() {const char *msg "hello fwrite\n";fwrite(msg, strlen(msg), 1, stdout);printf("hello printf\n");fprintf(stdout, &q…

DEJA_VU3D - Cesium功能集 之 106-鹰眼地图

前言 编写这个专栏主要目的是对工作之中基于Cesium实现过的功能进行整合,有自己琢磨实现的,也有参考其他大神后整理实现的,初步算了算现在有差不多实现小140个左右的功能,后续也会不断的追加,所以暂时打算一周2-3更的样子来更新本专栏(每篇博文都会奉上完整demo的源代码…

如何使用 YOLOv8 神经网络检测图像中的物体

对象检测是一项计算机视觉任务,涉及识别和定位图像或视频中的对象。它是许多应用的重要组成部分,例如自动驾驶汽车、机器人和视频监控。 多年来,已经开发了许多方法和算法来查找图像中的对象及其位置。执行这些任务的最佳质量来自使用卷积神经网络。 YOLO 是这项任务最流行的…

计算机网络——快速了解传输层协议

文章目录 一、TCP和UDP的区别二、TCP1.TCP报文段2.建立连接&#xff08;三次握手&#xff09;3.断开连接&#xff08;四次挥手&#xff09;4.TCP提供的支持 三、UDP参考 一、TCP和UDP的区别 传输层协议有两个——TCP和UDP&#xff0c;二者区别如下&#xff1a; 二、TCP 1.TCP…

MySQL集群

目录 主从复制 主从复制流程&#xff1a; 为什么要有relay log中继日志&#xff1f; 为什么要有主从复制&#xff0c;好处&#xff1f; 实际生产环境中。如果对MySQL数据库的读写都在一台数据库服务器中操作&#xff0c;无论是再安全性、高可用性&#xff0c;还是高并发性等…

MapReduce之WordCount本地测试

1&#xff09;需求 在给定的文本文件中统计输出每一个单词出现的总次数。 &#xff08;1&#xff09;输入数据 2&#xff09;期望输出数据 banzhang 1 cls 2 hadoop 1 jiao 1 ss 2 xue 1 2&#xff09;需求分析 按照MapReduce编程规范&#xff0c;分别编写Mapper&#x…

跨境电商支付平台-PingPong Pay(实现收银台模式沙箱支付)

介绍 PingPongCheckout 跨境支付的 API 接口文档,商户服务器和 PingPongCheckout 服务器进行交互。 供商户/平台服务方的技术开发及测试相关人员使用。 本文档分别从交互流程、通讯方式、签名方 案、交易接口、注意事项等⻆度详细介绍了 PingPongCheckout 跨境支付 API 接口的…

【C++】类和对象(中篇)

几个成员函数 类的6个默认成员函数构造函数引例特点 析构函数概念特点 拷贝构造函数概念特征 赋值运算符重载赋值运算符重载赋值运算符只能重载成类的成员函数不能重载成全局函数前置和后置重载 日期类的实现const成员函数取地址及const取地址操作符重载 类的6个默认成员函数 …

Web缓存利用分析(二)

导语&#xff1a;在上一篇文章中&#xff0c;大致介绍了一些关于Web Cache的攻击方式及CTF中的一些出现。而本篇文章则会聚焦于Web Cache在学术前沿的一些攻击利用方式的探究。 前言 在上一篇文章中&#xff0c;大致介绍了一些关于Web Cache的攻击方式及CTF中的一些出现。而本…

Web缓存利用分析(一)

导语&#xff1a;最近看到一些Web Cache方面的攻击&#xff0c;于是总结了一下&#xff0c;内容如下。 前言 最近看到一些Web Cache方面的攻击&#xff0c;于是总结了一下&#xff0c;内容如下。 背景知识 Cache是一种经典的用空间换时间的做法&#xff0c;其应用场景非常广…

Htop使用说明

目录 引言 什么是htop htop安装 htop界面介绍 htop功能介绍 引言 我们使用服务器的时候常常需要关注下自己的程序资源占用情况&#xff0c;htop就是一种互动式的进程查查看器&#xff0c;整齐用下来感觉比top的逼格高&#xff0c;造作可视化都更方便些&#xff0c;我觉得还…

《Vue.js 设计与实现》—— 02 框架设计核心要素

框架设计并非仅仅实现功能那么简单&#xff0c;里面有很多学问。例如&#xff1a; 框架应该给用户提供哪些构建产物&#xff1f;产物的模块格式如何&#xff1f; 当用户没有以预期的方式使用框架时&#xff0c;是否应该打印合适的警告信息从而提供更好的开发体验&#xff0c;让…

优化性能测试分析:如何科学利用CPU异常曲线

性能测试为保证软件质量起到重要作用&#xff0c;对于交易量较大的应用系统&#xff0c;性能测试更是一个必不可少的环节。 测试人员通常通过监测响应时间、吞吐量、应用服务器和数据库服务器的CPU及内存来衡量系统的性能是否达标&#xff0c;那么&#xff0c;在性能测试过程中…

LabVIEWCompactRIO 开发指南13 网络发布的共享变量

LabVIEWCompactRIO 开发指南13 网络发布的共享变量 跨网络共享标签的一种方法是网络共享变量。术语网络变量是指网络上可以在程序、应用程序、远程计算机和硬件之间进行通信的软件项。网络共享变量非常适合1:N或N:1设置&#xff0c;因为它们有一个内置的连接管理器来管理传入…

《Netty》从零开始学netty源码(五十六)之RecvByteBufAllocator

RecvByteBufAllocator 在创建channel的过程中会创建一个相应的配置类&#xff0c;该类存储了一些关于channel的属性&#xff0c;包括分配内存的ByteBufAllocator和预估大小的RecvByteBufAllocator&#xff0c;通过前面的学习我们知道ByteBufAllocator分配内存的时候最终会委托…