首页 > 解决方案 > 找到循环系统中两个值之间差异的最佳方法?

问题描述

以时间为例:如果我们有开始时间和结束时间,那么找到它们之间小时数的最佳方法是什么?

如果我们采用 12 小时制,我们会得到以下结果

最有效的方法是什么?

标签: c++calgorithm

解决方案


假设时钟为 12 小时制,从a到的小时数b可以计算为:

difference = ((b + 12) - a) % 12;

这也假设ab都在范围内[1, 12]。如果不是,您可以执行以下操作:

a %= 12;
b %= 12;

在进行差异计算之前。


推荐阅读