配列番号array
があります。 注文番号の配列に要素がありません。
e
がarray
の要素ではない、とe
、e
がv + 1
かv - 1
のいずれかである、array
のいくつかの要素v
について
- :私はが
array
からが欠落する番号e
を定義した場合0
より小さくない。たとえば、
から欠落している要素:
array = [0, 1, 2, 4, 5, 6, 9, 10, 12, 13, 17]
は以下のとおりです。
[3, 7, 8, 11, 14, 16, 18]
にはどうすればいいの要素が指定された配列array
から欠落して見つけることができますか?
は '使用することを検討してください。また、 '[e-1、e + 1]'は 'flat_map'の内部に十分です。 – mudasobwa
@ mudasobwa、私は '[e-1、e + 1]'を持っています。代わりにindexについて - 配列の最初の要素が '0'でない場合はどうなりますか? – Ilya
すみません。結果の配列に現れる余分な要素は '-1'だけです。つまり、 ' - [-1]'と 'select {| e | e> = 0} 'は完全に等価です:' arr.flat_map {| e | (e-1..e + 1).to_a} .uniq-arr - [-1] 'となる。 – mudasobwa