一天之内分针与时针相遇多少次

2023-10-07 18:18

本文主要是介绍一天之内分针与时针相遇多少次,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

有一道面试题:用程序求出一天之内分针与时针相遇多少次。
先来分析一下:
设分针的角速度为大V,时针的角速度为小v,那么它们相遇时一定满足以下条件:
V*t = v*t + 360°*n
其中n为0到无穷大的整数
如果t以小时为单位,那么 V=360°/h,v=30°/h,进而得出:
360*t = 30*t + 360*n
360*t - 30*t = 360*n
330*t = 360*n
t = 360*n/330

而t要满足大于等于0,小于23,所以可用以下代码(以js为例)实现:
var count = 0;
var time = 24;
for(var n=0; n<100000; n++){if(360*n/330>=time){ break;}count++;
}
console.log(time+"小时内时针分针相遇:"+count+"次");
输出结果:
  • "24小时内时针分针相遇:22次"


如果需要得出在什么时刻相遇,只需要如下处理:

var count = 0;
var time = 24;
for(var n=0; n<100000; n++){var tmpTime = 360*n/330;//if(tmpTime>=time){ break;}console.log("第"+tmpTime+"时时针分针相遇第"+(n+1)+"次");count++;
}
console.log(time+"小时内时针分针相遇:"+count+"次");

输出结果:

"第0时时针分针相遇第1次"
"第1.0909090909090908时时针分针相遇第2次"
"第2.1818181818181817时时针分针相遇第3次"
"第3.272727272727273时时针分针相遇第4次"
"第4.363636363636363时时针分针相遇第5次"
"第5.454545454545454时时针分针相遇第6次"
"第6.545454545454546时时针分针相遇第7次"
"第7.636363636363637时时针分针相遇第8次"
"第8.727272727272727时时针分针相遇第9次"
"第9.818181818181818时时针分针相遇第10次"
"第10.909090909090908时时针分针相遇第11次"
"第12时时针分针相遇第12次"
"第13.090909090909092时时针分针相遇第13次"
"第14.181818181818182时时针分针相遇第14次"
"第15.272727272727273时时针分针相遇第15次"
"第16.363636363636363时时针分针相遇第16次"
"第17.454545454545453时时针分针相遇第17次"
"第18.545454545454547时时针分针相遇第18次"
"第19.636363636363637时时针分针相遇第19次"
"第20.727272727272727时时针分针相遇第20次"
"第21.818181818181817时时针分针相遇第21次"
"第22.90909090909091时时针分针相遇第22次"
"24小时内时针分针相遇:22次"



还有的题目要求算出一天之内分针与时针垂直的次数有多少,
那么同理可以分析得出:
当分针与时针垂直时一定满足以下条件:
V*t = v*t + 360°*n + 90°
所以
360*t = 30*t + 360*n + 90
360*t-30*t = 360*n + 90
330*t = 360*n + 90
t = (360*n+90)/330

var count=0;
var time = 24;
for(var n=0; n<100000; n++){if((360*n+90)/330>=time){break;}count++;
}
console.log(time+"小时内时针分针垂直:"+count+"次");

输出结果:

  • "24小时内时针分针垂直:22次"

这篇关于一天之内分针与时针相遇多少次的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/159564

相关文章

MiniGPT-3D, 首个高效的3D点云大语言模型,仅需一张RTX3090显卡,训练一天时间,已开源

项目主页:https://tangyuan96.github.io/minigpt_3d_project_page/ 代码:https://github.com/TangYuan96/MiniGPT-3D 论文:https://arxiv.org/pdf/2405.01413 MiniGPT-3D在多个任务上取得了SoTA,被ACM MM2024接收,只拥有47.8M的可训练参数,在一张RTX

【多系统萎缩患者必看】✨维生素补充全攻略,守护你的健康每一天!

亲爱的朋友们,今天我们要聊一个既重要又容易被忽视的话题——‌多系统萎缩患者如何科学补充维生素‌!🌟 在这个快节奏的生活中,健康成为了我们最宝贵的财富,而对于多系统萎缩(MSA)的患者来说,合理的营养补充更是维护身体机能、提升生活质量的关键一步。👇 🌈 为什么多系统萎缩患者需要特别关注维生素? 多系统萎缩是一种罕见且复杂的神经系统疾病,它影响身体的多个系统,包括自主神经、锥体外系、小脑及锥

判断某一天是否是节假日

请求url http://www.easybots.cn/api/holiday.php?d=20160104 返回值: 工作日对应结果为 0, 休息日对应结果为 1, 节假日对应的结果为 2; 检查一个日期是否为节假日 http://www.easybots.cn/api/holiday.php?d=20130101 检查多个日期是否为节假日 http://www.easybots.

【UVALive】2965 Jurassic Remains 中途相遇法

传送门:【UVALive】2965 Jurassic Remains 题目分析:本题用了一个很不错的思想——中途相遇法。 因为题目的数据很小,我们很容易想到暴力,但是2^24次方的枚举依旧复杂度太大,因此我们可以这么做:将一半的串枚举异或能得到的所有的值,插入到map中,然后再枚举异或另一半的串能得到的所有的值,然后查找map中的与这个值相同的有没有,更新一下能得到的最大数量即可。 成

mysql 获取本月/上月/下月第一天/最后一天

select curdate(); -- 获取当前日期select last_day(curdate()); -- 获取当月最后一天。select DATE_ADD(curdate(),interval -day(curdate())+1 day); -- 获取本月第一天select date_add

java 获取周、月、年的第一天以及最后一天的详细代码

public class MyCalendar { public static Date getDate(Calendar c) {      return new Date(c.getTimeInMillis());   }   /** * 得到本周第一天 * @return */ public static Calendar getFir

在圣诞这一天

今天就是圣诞节了,作为一个中国人,我不知道是有多少人愿意过这个节日的,可能有很多人会说:纯粹瞎凑热闹,中国人过什么洋节,但笔者想在这里说,这个节我是过的!         不知道大家是否有这样的体会,每当有节日临近,我们会感觉出奇的轻松,心底总是拥有着那么一丝的喜悦,或许你感觉不到,但笔者是感觉到了,不管你信不信。实际上,节日只是当代高压社会的一个放松切入点,大家每一天或许都在做

overleaf latex 公式表格引用图片 一天全攻略 写文章基本够用

这个教程的意义在于利用工具先快速上手,停止将latex作为一个高大上神秘的东西,说白了,快点用上。 我发现笔记真的特别有用,尤其是你每天输入大量东西,你就会发现,你对上周的记忆都模糊了,更别说上个月了,所以我时不时会翻看自己写的教程。。。青年痴呆状态。所以工具教程我也开始写了。 教程这个东西,最好是学得快,能快速学自己要用的,其余庞杂的不需要的一眼都不看。所以我觉得教程的模样应该是一个b

重生之我们在ES顶端相遇第11 章 - 深入自定义语言分词器

文章目录 0. 前言1. 英语分词器2. 阿拉伯语分词器3. 结语 0. 前言 国内企业出海是大势所趋,那么基于不同的语种进行分词就显得尤为重要,因为这会让用户的搜索体验更棒! 国内出海企业,会更偏向于选择欧美、中东这 2 个地区。 因此本文章也重点介绍英语、阿拉伯语的分词。 在 ES 中内置的分词器中,有一个叫 Language analyzers,我们可以根据该分词

重生之我们在ES顶端相遇第10 章- 分分分词器的基本使用

文章目录 思维导图0. 前言1. 光速上手1.1 指定分词器1.2 测试分词器 2. 分词流程(重要)2.1 基本介绍2.2 深入如何测试分词器 3. 自定义一个简单的分词器 思维导图 0. 前言 分词器在 ES 搜索使用中非常关键,一个好的分词器能够提高搜索的质量,让用户搜索到其想要的内容。 下面我将带大家从整体了解分词器。 1. 光速上手 1.1 指定分词器