""" Шаҳарлар жўфтлари тўплами берилган: - ҳар бир жўфтда ходим тўғридан-тўғри парвоз қилган; - парвоз йўналиши ҳақидаги маълумот йўқолган; - шунингдек, парвозлар тартиби ҳам йўқолган. Билганимизга кўра, барча парвозлар биргина саёҳатга тегишли. Ҳар бир кейинги парвоз аввалги тугаши билан бошланган. Ҳеч қандай шаҳар ходим томонидан икки марта зиярат қилинмаган. Саёҳат бошланиш шаҳри ҳам охирги нуқтадан фарқ қилади. Шаҳарларни маршрут бўйича кетма-кетликда чиқаринг. Икки мумкин бўлган жавоблар мавжуд, ҳар иклиси мос келади. Масаланлар: [("Москва", "Белград")] -> ["Москва", "Белград"] [("Москва", "Белград"), ("Москва", "Ереван")] -> ["Ереван", "Москва", "Белград"] Flight = tuple[str, str] def get_route(flights: list[Flight]) -> list[str]: ...
Python
from file import ATM, SDK import pytest BILLS = {5000, 1000, 500, 100, 50} @pytest.mark.parametrize( "bills_count_const,expected", [ ({5000: 0, 1000: 0, 500: 0, 100: 0, 50: 0}, False), ({5000: 100, 1000: 100, 500: 100, 100: 100, 50: 100}, True) ] ) def test_false(bills_count_const, expected): atm = ATM(SDK()) atm.bills_count = bills_count_const amount = 1000 res = atm.withdraw(amount) assert res == expected return
Маҳорати вақт ва фазоии алгоритмро нисбат ба дарозии матн n ва андозаи алифбо m арзёбӣ кунед.
Оё таҷрибаи таҳияи барномаҳо бо бисёрсоҳавӣ ё асинхронӣ дорӣ?
```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 ``` Мақсад - `min_s(a: str, s: str) -> str` функциясини амалга ошириш, `s` ичида `a` сатридаги барча ҳарфларни ўз ичига олган энг кичик бўлакни топиш.
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
```python # a = "abc", беғараз, уникалӣ (m) # s = "dfaga[bfkac]ebf" => "aceb" (n) O(n) # s = "cfaafb" => "cfaafb" # s = "affb" => "" 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 ```
Чӣ тавр фаҳмидан мумкин аст, ки оё метавон як рамзи махсус (масалан, рамзи A) дар ҳоле ки тирезаро аз тарафи чап танг мекунед, хориҷ кард, бидуни аз даст додани фароии алифбо?
Беҳтарин хидмат дар як сония чанд дархостро коркард кардааст?
Кадом формати корироӣро баррасӣ мекунед?
Кадом сохтори маълумот метавонад барои намоиши граф дар ин вазифа истифода шавад?
# a = "abc", холӣ нест, беназири # s = "dfagabfkacebf" => "aceb" # s = ""
""" Шаҳарлар парларининг тўплами берилган: - ҳар бир шаҳар парлари орасида ходим тўғридан-тўғри парвоз қилган; - парвоз йўналиши ҳақида маълумот йўқотилган; - шунингдек, парвозлар тартиби ҳам йўқотилган. Билганимизга кўра, барча парвозлар бирга саёҳатга тегишли. Ҳар бир кейинги парвоз аввалги тугаши билан бошланган. Ҳеч қандай шаҳар ходим томонидан икки марта ташриф буюрилмаган. Саёҳат бошланиш шаҳри ҳам охирги нуқтадан фарқ қилади. Шаҳарларни маршрут бўйича тартибда чиқаринг. Икки мумкин бўлган жавоблар мавжуд, ҳар иклиси мос келади. Масаланлар: [("Москва", "Белград")] -> ["Москва", "Белград"] [(("Москва", "Белград"), ("Москва", "Ереван")) -> ["Ереван", "Москва", "Белград"] """ Flight = tuple[str, str] def get_route(flights: list[Flight]) -> list[str]: ...
Кадом аст, ки мураккабияти ниҳоии алгоритм пас аз бартараф кардани амалиёти квадратист? Оё дуруст аст, ки андозаи алифбо m дар мураккабияти вақти он таъсир намерасонад?
Дар кадом базаҳои додаҳо ё дигар анборҳо дар кор истифода мебарӣ?
Интихоби як силсилаи ададҳои бутун аст. Мо бояд ҳадди ақал имконпазирии зарбаи ду унсури силсиларо ёбем (ду унсур – ду унсури ҳар чӣ, на ҳатман пайдарпай). Масалан, барои силсилаи рақамҳои 9 4 2 5 3 ҷавоб 6 хоҳад буд.
Оё қаблан дар [шаҳр] ҷойҳои холӣ баррасӣ кардаед, бо рекрутёрҳо тамос гирифтаед?