<prompt> Kwa kuzingatia safu ya mifuatano maneno bila nakala, rudisha _maneno yote yaliyounganishwa katika orodha iliyotolewa ya_ maneno.Neno lililoambatanishwa linafafanuliwa kama mfuatano ambao unajumuisha angalau maneno mawili mafupi si lazima yawe tofauti katika safu fulani.Mfano wa 1:Ingizo: maneno paka, paka, catsdogcats , mbwa , dogcatsdog , kiboko , panya, ratcatdogcat Pato: catsdogcats , dogcatsdog , ratcatdogcat Maelezo: catsdogcats inaweza kuunganishwa na paka, mbwa na paka; dogcatsdog inaweza kuunganishwa na mbwa, paka na mbwa; ratcatdogcat inaweza kuunganishwa na panya, paka, mbwa na paka.Mfano wa 2:Ingizo: maneno paka , mbwa , pakaPato: pakaVikwazo: 1 maneno.urefu 104 1 manenoi.urefu 30 manenoi huwa na herufi ndogo za Kiingereza pekee. Mishipa yote ya maneno ni kipekee. 1 jumla manenoi.urefu 105  <response>: chatudef is_concatenated neno, neno_dict: n neno neno dp Si kweli n 1 dp0 Kweli kwa i katika masafa 1, n 1: kwa j katika safui: ikiwa dpj na nenoj:i katika neno_dict: dpi Kweli mapumziko rudisha dpndef find_all_concatenated_wordsmaneno: neno_dict kuweka maneno matokeo kwa neno kwa maneno: ikiwa_imeunganishwa neno, neno_dict: tokeo.ongezaneno matokeo ya kurudimaelezoAlgorithm hutumia programu inayobadilika kuamua ikiwa neno fulani ni neno lililounganishwa. Chaguo za kukokotoa isConcatenated hukagua ikiwa neno linaweza kuundwa kwa kuambatanisha maneno mawili au zaidi kutoka kwa safu ya ingizo. Hurudiarudia kupitia herufi za neno na hutumia safu ya boolean dp kufuatilia ikiwa kamba ndogo kutoka mwanzo wa neno hadi faharasa fulani inaweza kuundwa au la kwa kuunganisha maneno kutoka kwa safu ya ingizo.Kisha, kitendakazi kikuu findAllConcatenatedWords hurudia kupitia kila neno katika safu, na ikiwa neno ni neno lililounganishwa, huliongeza kwenye orodhasafu ya matokeo.Utekelezaji nne katika C, Java, Python, na JavaScript hutumia algoriti iliyofafanuliwa hapo juu lakini inarekebishwa kwa sintaksia ya lugha zao na maktaba za kawaida. 