我没有任何数学背景,所以请原谅我的语言。
假设有两个正整数(a,b),它们的差值不大于(d),这是一个可以预先确定的常数。
算法接受一个数字(a | b)作为输入,将输出一个相对于两者的新整数,希望放在两者之间。
这两个整数都是相同的,基本上都是定义范围内的所有数字。
a = 1464009526876;
b = 1464009514876;
alg(a); // output: 1464009526800
alg(b); // output: 1464009526800
我的总体挑战是同步两个数字,并尝试生成不同的值,但有点接近初始重置值和/或平均/相对时间。
答案 0 :(得分:0)
在现实条件下无法计算出这一点。
即使是简化版本,您只是想知道另一个时钟是否领先或落后于您同样是不可能的。你不是精神上的。
你基本上需要一个位置方程(量子时间是"时间"和"位置"是计算机认为它的时间)。双方都需要事先知道。
通过收集数据和推断,您可以很好地估计每个位置图的样子。
如果你有这个,那么找到解决方案就很简单了。
如果它结束了你的时间,你可以将这个值插入你的位置方程中,以获得量子"时间。然后你可以使用该值来找出它在另一端的时间。
然后你必须解决创建另一个方程式的问题,你可以将这两个数字插入并获得算法结果所需的值。没有更多信息,很难说它可能是什么样子。
当然这是一个高级别的解释,但数学不应该太难实现。显然,我不确定这会如何反映现实世界。
答案 1 :(得分:0)
我建议获取当前时间,然后四舍五入到最接近的秒(毫秒,无论如何)。
为了使其工作,您需要两个系统让他们的时间几乎同步。您可以安全地假设时钟每天不会超过1/2秒。因此,如果您的两个系统每天都调用一些NTP服务来获取当前时间,那么您可以假设这两个系统彼此相距1/2秒。