<prompt> Unapewa safu kamili nums na nambari mbili kamili indexDiff na valueDiff.Tafuta jozi ya fahirisi i, j ili: mimi ! j, absi - j indexDiff. absnumsi - numsj valueDiff, naRejesha kweli _ikiwa jozi kama hizo zipo au_ sivyo _vinginevyo_.Mfano wa 1:Ingizo: nambari 1,2,3,1, indexDiff 3, valueDiff 0Pato: kweliMaelezo: Tunaweza kuchagua i, j 0, 3.Tunakidhi masharti matatu:i ! j -- 0 ! 3absi - j indexDiff -- abs0 - 3 3absnumsi - numsj valueDiff -- abs1 - 1 0Mfano wa 2:Ingizo: nambari 1,5,9,1,5,9, indexDiff 2, valueDiff 3Pato: si kweliMaelezo: Baada ya kujaribu jozi zote zinazowezekana i, j, hatuwezi kukidhi masharti matatu, kwa hiyo tunarudi uongo.Vikwazo: 2 nums.length 105 -109 nambarii 109 1 indexDiff nums.length 0 valueDiff 109  <response>: chatukutoka kwa vyombo vilivyopangwa ingiza SortedListdef ina NearbyAlmostDuplicatenums, k, t: dirisha SortedList kwa mimi katika anuwailennambari: kama mimi k: dirisha.ondoanambarii - k - 1 pos window.bisect_leftnambarii - t ikiwa pos ! lendirisha na dirishapos - numsi t: kurudi Kweli dirisha.ongezaidadii kurudi UongomaelezoKatika algoriti hii, tunadumisha dirisha la kuteleza la ukubwa wa k 1, na kutumia mti wa utafutaji weka au TreeSet kulingana na lugha ili kuhifadhi vipengele ndani ya dirisha. Tunatumia mti wa utafutaji kutafuta vipengele kwenye dirisha vinavyotimiza mahitaji ya absnumsi - numsj t.Kwa kila kipengele katika nums, tunajaribu kupata kifungo cha chini kwenye mti wa utafutaji kilicho karibu na kipengele cha sasa ndani ya t. Ikiwa tayari kuna kipengele kinachotimiza masharti, tunarudi kweli.Tunaondoa vipengele kutoka kwa mti wa utafutaji unaoanguka nje ya dirisha na kuongeza kipengele cha sasa kwenye mti wa utafutaji, kudumisha ukubwa wa dirisha.Ikiwa tunarudia safu nzima bila kupata jozi inayoafiki hali hiyo, tunarudisha uwongo.Kumbuka kuwa katika utekelezaji wa Python, SortedList kutoka kwa kifurushi cha sortedcontainers inatumika kwani inatoa utendakazi unaohitajika sawa na C na Java. Unaweza kuhitaji kusakinisha kifurushi kupitia bomba ikiwa haipatikani. 