<prompt> Bitset ni muundo wa data ambao huhifadhi biti kwa ushikamanifu.Tekeleza darasa la Bitset: Bitsetint size Huanzisha Bitset kwa biti za size, ambazo zote ni 0. void fixint idx Husasisha thamani ya biti kwenye faharasa idx hadi 1. Ikiwa thamani ilikuwa tayari 1, hakuna mabadiliko yanayotokea. batilisha utupuint idx Husasisha thamani ya biti kwenye faharasa idx hadi 0. Ikiwa thamani ilikuwa tayari 0, hakuna mabadiliko yanayotokea. void flip Hugeuza thamani za kila biti kwenye Bitset. Kwa maneno mengine, biti zote zenye thamani 0 sasa zitakuwa na thamani 1 na kinyume chake. boolean all Hukagua ikiwa thamani ya kila kwenye Bitset ni 1. Hurejesha kweli ikiwa inakidhi masharti, false vinginevyo. boolean one Hukagua ikiwa kuna angalau biti moja kwenye Bitset yenye thamani 1. Hurejesha kweli ikiwa inakidhi masharti, false vinginevyo. int count Hurejesha jumla ya nambari ya biti katika Bitset ambazo zina thamani 1. String toString Hurejesha muundo wa sasa wa Bitset. Kumbuka kuwa katika mfuatano tokeo, herufi katika faharasa ya ith inapaswa sanjari na thamani katika sehemu ya ith ya Bitset.Mfano wa 1:Ingizo Bitset , rekebisha , rekebisha , pindua , yote , tengua , pindua , moja, ondoa, hesabu, toString 5, 3, 1, , , 0, , , 0 , , Patonull, null, null, null, uongo, null, null, true, null, 2, 01010 UfafanuziBitset bs Bitset mpya5; bitset 00000.bs.rekebisha3; thamani katika idx 3 imesasishwa hadi 1, kwa hivyo bitset 00010 .bs.rekebisha1; thamani katika idx 1 imesasishwa hadi 1, kwa hivyo bitset 01010 .bs.pindua; thamani ya kila biti imepinduliwa, kwa hivyo bitset 10101 .bs.zote; return Uongo, kwani sio maadili yote ya bitset ni 1.bs.tengua0; thamani katika idx 0 imesasishwa hadi 0, kwa hivyo bitset 00101 .bs.pindua; thamani ya kila biti imepinduliwa, kwa hivyo bitset 11010 .bs.moja; return True, kwani kuna angalau index 1 yenye thamani 1.bs.tengua0; thamani katika idx 0 imesasishwa hadi 0, kwa hivyo bitset 01010 .bs.hesabu; rudisha 2, kwani kuna biti 2 zenye thamani 1.bs.toString; kurudi 01010, ambayo ni muundo wa bitset.Vikwazo: 1 ukubwa 105 0 idx ukubwa - 1 Simu zisizozidi 105 zitapigiwa kwa jumla ili kurekebisha, tengua, pindua, zote, moja, hesabu, na toString. Angalau simu moja itapigwa kwa wote, one, count, au toString. Simu zisizozidi 5 zitapigwa kwa toString.  <response>: def valid_move_combinationsvipande, nafasi: n lenzi vipande hesabu 0 kwa mimi katika safun: kwa j katika safun: ikiwa i ! j na si vipandei askofu na nafasii0 nyadhifai1 2 ! nafasij0 nyadhifa j1 2: hesabu 1 hesabu ya kurudi 