2つの間隔の重なり:推論/アルゴリズムの互いに素と重なり合いの間隔を見つけるためのアルゴリズム

cs.stackexchange https://cs.stackexchange.com/questions/121685

  •  29-09-2020
  •  | 
  •  

質問

正の整数を考慮して、対応する整数{1,2,3,4、...} と対応する整数番号線を考えます。

4つの整数、A、B、C、およびD。

例えば:

____________________ B _________________________ _______________________ c ___________ D ______________________________P>

または

____________________ B _________________________ ________________________ c ____________________________________P>

連続したすべての数字C、...、...、d。

のセットとして、すべての連続した数字A、...、B、およびINTERVAL CDのセットとして表記ABを検討します。

私たちが両方のセット間の「民間投票」番号と「重なり合う」番号からなるすべての間隔を見つけたいと思う場合、私たちが適用できる、シンプルで抽象的な抽象的でゼネラル化された共鳴(数学的デモンストレーションは本当に分類されます)を知りたいです。数、AB、CD。

例1: Ab= {2,3,4,5,6,7,8,9}、CD= {4,5,6,7}の場合、次のものがあります。セットABとCDのサブセット:

  • ABの場合:{2,3}、{4,5,6,7}と{8,9}
  • CDの場合:{4,5,6,7}

実施例2: Ab= {2,3,4,5,6,7,8,9}とCd= {4,5,6,7,8,9,10 、11,12}は、セットABとCDの次のサブセットを持っています。

  • ABの場合:{2,3}、{4,5,6,7,8,9}
  • CDの場合:{4,5,6,7,8,9}および{10,11,12}

しかし、どちらが互いに微分されていて重なり合う整数の整数のセットの間の大きさでまだ単純な推論となるでしょうか?

あらゆる手がかりに感謝します!!

役に立ちましたか?

解決

2つの整数 $ a $ $ b $ ここで $ A \ LE B $ $ [a、b)$ は、数字からなる半閉の半オープン間隔を表します。 SPAN CLASS="Math-Container"> $ A、A + 1、\ CD、B-1 $ 。特に、 $ a の場合、 $ [A、B)$ $ a= b $ の場合、 $ [a、b)$ に番号はありません。たとえば、

です

  • $ [0,1)$ は、番号0を意味します。
  • $ [0,0)$ 数字なし。
  • $ [5,11)$ は、数字 $ 5,6,7,8,9,10です。
  • 番号を表す $ - 2、-1,0,1,2 $ $を使用できます。 -2,3)$

半閉まった半オープン間隔の素晴らしい特性: $ l \ le m \ le $ 、そして $ [l、r)= [l、m)\ sqcup [m、r)$

証明:私は定義によって明らかであることを恐れています。完了しました。


$ [a、b)$ $ [c、d)$ を指定したとします。 、 $ a \ lt b $ a \ lt b $ a \ $ c \ lt d $ 。その後、 $ [a、b)$ オーバーラップ $ [c、d)$ の場合、 $ \ max(a、c)\ lt \ min(b、d)$ 。

証明:

" $ \ rightarrow $ ": $ n $ の両方の $ [a、b)$ と $ [c、d)$ 、つまり、 $ A \ LE N \ LT B $ $ c \ le n \ lt d $ 。その後、 $ \ max(a、c)\ le n \ lt \ min(b、d)$

" $ \ leftarrow $ ": $ a \ le \ max(a、c)\ lt \ min( b、d)\ le b $ 、つまり $ \ max(a、c)\ in [a、b)$ 。同様に、 $ \ max(a、c)\ in [c、d)$ です。 sa $ [a、b)$ 重複 $ [c、d)$

完了


$ [a、c)$ $ [b、d)$ の重なりを仮定します。それから我々は以下のセット分解を持っています。

  • $ [a、b)= [a、\ max(a、c))\ sqcup [\ max(a、c)、\ min(b、d)] \ sqcup [\ min(b、d)、b)$
  • $ [c、d)= [c、\ max(a、c))\ sqcup [\ max(a、c)、\ min(b、d)] \ sqcup [\ min(b、d)、d)$

証明:

$ a \ le \ max(a、c)\ le \ min(b、d)\ le b $ を持っています。だから、

$$ \ begin {align} [a、b)&= [a、\ max(a、c))\ sqcup [\ max(a、c)、b)\\ &= [a、\ max(a、c))\ sqcup [\ max(a、c)、\ min(b、d)] \ sqcup [\ min(b、d)、b)。 \ end {align} $$


例1: $ i={2,3,4,5,6,7,8,9 \} $ $ J={4,5,6,7 \} $ 、次に $ i= [2,10 $ $ j= [4,8)$ 。以下のセット分解があります。

  • $ [2,10)= [2,4)\ sqcup [4,8)\ sqcup [8,10)$
  • $ [4,8)= [4,4)\ sqcup [4,8)\ sqcup [8,8)= [4,8)$

例2: $ i= {2,3,4,5,6,7,8,9} $ の場合 $ J= {4,5,6,7,8,9,10,11,12,8,9,9,10,11,12} $ 、次に $ i= [2,10)$ $ j= [4,13)$ 。以下のセット分解があります。

  • $ [2,10)= [2,4)\ sqcup [4,10)\ sqcup [10,10)= [2,4)\ sqcup [4、 10)$
  • $ [4,13)= [4,10)\ sqcup [10,13)= [4,10)\ sqcup [10、 13)$

上記の例は、2つの重複する間隔を分解するアルゴリズムを明確に示しています。

ライセンス: CC-BY-SA帰属
所属していません cs.stackexchange
scroll top