int
给定时钟板上的2 次(as ),我必须计算它们之间的最小距离。
例如 -
d(12,1) = 1 //not 11
d(3,5) = 2
d(10,10) = 0
最快的方法是什么?
你试过什么?
Dim dif = Math.Abs((t2 + 6) Mod 12 - (t1 + 6) Mod 12)
如果a
并且b
是 从1
到12
:
min(abs(a - b), 12 - abs(a - b))
纯算术(没有任何库):
int d(int first, int second){
int temp = first - second;
temp < 0? temp *=-1 :temp ;
int distance = temp > 6? 12-temp:temp;
return distance;
}