2011-01-22 51 views
0

如果我有一對分離值對的列表,那麼如何計算給定數字落入哪個索引(即輸入在區間中)?例如:座標在線性遞增區間內的公式

f([[0, 2], [3, 6], [7, 10]], 4) == 1 

編輯 - 爲了澄清,我知道天真的算法是非常明顯的。我覺得有一個恆定的時間(或至少比線性)更好的解決方案。

+0

一個例子是所有時間間隔不重疊的和單調? –

+0

它們可能會在邊界重疊(即[0,2],[2,5]),是的,我認爲它是單調的。 – wes

回答

0

這裏是在Python

def f(intervals, value): 
    for i in intervals: 
     if (value >= i[0]) and (value <= i[0]): 
      return True 
    return False