Sobes.tech

""" Қала жұптарының жиынтығы берілген: - әр жұп қала арасында қызметкер тікелей ұшып өтті; - ұшу бағыты туралы ақпарат жоғалған. - сондай-ақ ұшу тәртібі де жоғалған. Барлық ұшулар бір саяхатқа тиесілі екені белгілі. Әр келесі ұшу қызметкер алдыңғы ұшудан кейін аяқтаған қаладан бастады. Ешқандай қала қызметкер екі рет болмаған. Саяхаттың басталу қаласы да соңғы нүктеден ерекшеленеді. Маршрут бойынша қала тізбегін шығарыңыз. Екі мүмкін жауап бар, кез келгені жарайды. Мысалдар: [("Мәскеу", "Белград")] -> ["Мәскеу", "Белград"] [("Мәскеу", "Белград"), ("Мәскеу", "Ереван")] -> ["Ереван", "Мәскеу", "Белград"] Flight = tuple[str, str] def get_route(flights: list[Flight]) -> list[str]: ...

118

файлдан ATM, SDK импорттау pytest-ті импорттау BILLS = {5000, 1000, 500, 100, 50} @pytest.mark.parametrize( "bills_count_const,expected", [ ({5000: 0, 1000: 0, 500: 0, 100: 0, 50: 0}, ЖОҚ), ({5000: 100, 1000: 100, 500: 100, 100: 100, 50: 100}, ИӘ) ] ) def test_false(bills_count_const, expected): ATM(SDK())-ны пайдаланып, atm құру atm.bills_count-ке bills_count_const мәнін орнату amount = 1000 res = atm.withdraw(amount) assert res == expected қайтару

118

Алгоритмнің уақыттық және кеңістік күрделілігін мәтіннің ұзындығы n және алфавиттің өлшемі m бойынша бағалаңыз.

118

Көп ағынды немесе асинхронды бағдарламалар жасау тәжірибеңіз болды ма?

117

```python from collections import Counter def min_s(a: str, s: str) -> str: need = set(a) window = Counter() res = "" c = 0 left = 0 best_len = float('inf') for right, char in enumerate(s): if char in need and \ window[char] += 1 if window[char]: c += 1 while c == len(need): if right - left + 1< best_len: res = s[left:right + 1] best_len = right - left + 1 if s[left] in need: window[s[left]] -= 1 if window[s[left]] == 0: c -= 1 left += 1 return res ``` Міндет — `a: str` және `s: str` жолдарынан барлық таңбалар бар ең қысқа ішкі жолды табатын `min_s(a: str, s: str)` функциясын жүзеге асыру.

116

from collections import Counter def min_s(a: str, s: str) -> str: need = set(a) window = Counter() res = "" c = 0 left = 0 best_len = float('inf') for right, char in enumerate(s): if char in need: window[char] += 1 if window[char] == 1: c += 1 while c == len(need): if right - left + 1 < best_len: res = s[left:right + 1] best_len = right - left + 1 if s[left] in need: window[s[left]] -= 1 if window[s[left]] == 0: c -= 1 left += 1 return res

116

```python # a = "abc", бос емес, бірегей (m) # s = "dfaga[bfkac]ebf" => "aceb" (n) O(n) # s = "cfaafb" => "cfaafb" # s = "affb" => "" collections кітапханасынан Counter импорттау def min_s(a: str, s: str) -> str: қажетті = set(a) терезе = Counter() нәтиже = "" сан = 0 сол = 0 ең жақсы ұзындық = float('inf') үшін оң жақ, таңба in enumerate(s): егер таңба қажеттіде және \ терезе[таңба] += 1 егер терезе[таңба]: сан += 1

116

Қалай анықтауға болады, нақты бір таңбаны (мысалы, A таңбасын) сол жақтан терезені тарылту кезінде тастауға бола ма, алфавитті қамту жоғалмай?

113

Ең жүктемелі қызмет ең көп қандай сұрауларды секундына өңдей алады?

113

Қандай жұмыс форматын қарастырасыз?

113

Бұл тапсырмада графты көрсету үшін қандай деректер құрылымы қолданылуы мүмкін?

113

# a = "abc", бос емес, бірегей # s = "dfagabfkacebf" => "aceb" # s = ""

111

""" Қала жұптарының жиынтығы: - әр жұпта тікелей ұшу бар; - ұшу бағыты белгісіз; - ұшу тәртібі де жоғалған. Барлық ұшулар бір саяхатқа тиесілі екені белгілі. Әр келесі ұшу алдыңғы ұшудың аяқталған қаласынан басталады. Қала екі рет 방문 етілмеген. Саяхаттың басталатын қаласы соңғы қаладан басқа. Маршруттағы қалаларды ретімен шығарыңыз. Екі мүмкін жауап бар, кез келгені жарайды. Мысалдар: ["Мәскеу", "Белград"] -> ["Мәскеу", "Белград"] [("Мәскеу", "Белград"), ("Мәскеу", "Ереван")] -> ["Ереван", "Мәскеу", "Белград"] """ Flight = tuple[str, str] def get_route(flights: list[Flight]) -> list[str]: ...

111

Квадраттық операцияны жоюдан кейін алгоритмнің соңғы күрделілігі қандай? Алфавиттің өлшемі m уақыттық күрделілікке әсер етпейтіні дұрыс па?

110

Жұмысыңызда қандай дерекқорлар немесе басқа сақтау жүйелерін қолданасыз?

109

Берілген бүтін сандар тізбегі. Тізбектегі екі элементтің ең кіші мүмкін көбейтіндісін табыңыз (жұп — екі элемент, міндетті түрде қатар емес). Мысалы, 9 4 2 5 3 тізбегі үшін жауап 6 болады.

105

Бұрын [компания] вакансияларын қарастырдыңыз ба, және рекрутерлермен байланысқан баңыз?

99
/5