Жобаларда сақталған деректердің ең үлкен көлемі қандай болды?
Python
next() қалай жұмыс істейтіні туралы түсіндіріп берсеңіз?
Сыртқы тәуелділіктерді қолданбай, бәсекелес қатынаудан қорғау үшін жадыда қарапайым блокировка механизмін қалай жүзеге асыруға болады?
Тәжірибеңізде ең үлкен деректер көлемі қандай болды?
Деректерді сақтау үшін бұлт платформаларын қолдануда тәжірибеңіз бар ма?
Кіріс деректерінің шекара жағдайларын қалай өңдейсіз — теріс сандар, тым үлкен сомалар, дұрыс емес мәндер?
Мұндай шешімнің күрделілігін бағалай аласыз ба (уақыт пен жад бойынша)? Және неге күрделілік O(n^2) емес?
Соңғы рет қашан алгоритмдік тапсырмаларды практика немесе жобалар үшін орындадыңыз?
Рөлі немесе компания туралы сұрақтарыңыз бар ма?
Алдыңғы командаңыздағы қатысушылар санын қалай анықтауға болады?
# OneEditApart("мысық", " ит") -> жалған # OneEditApart("мысық", "мысықтар") -> шын # OneEditApart("мысық", "кесу") -> шын # OneEditApart("мысық", "каст") -> шын # OneEditApart("мысық", "ат") -> шын # OneEditApart("мысық", "әрекеттер") -> жалған def OneEditApart(s1, s2) -> bool:
Таралған архитектураларға негізделген жүйелерді құру және қолдау тәжірибеңіз бар ма?
# Купюралармен толтырылған кассеталармен зарядталатын банкомат, біздің қосымшамызбен бірге # белгіленген соманы беру немесе бас тарту туралы жауап беруі керек # Купюралар берілген кезде, олар банкоматтың балансынан алынады. # Қабылданатын номиналдар: 50Р, 100Р, 500Р, 1000Р, 5000Р. class ATM: pass # код үшін орын # Банкомат құрылғысы: # - ақша банкоматтың ішіндегі кассеталарда орналасқан, оларды инкассатор жүктейді және қайта жүктейді; # - әр кассетада өзінің номиналы бар купюралар орналасқан; # - банкомат кассеталардағы банкноттардың қалған санын есептей алады, бірақ бұл операция ұзақ уақыт алады - оны мүмкіндігінше сирек шақыру керек. # Банкоматпен өзара әрекеттесу үшін API. # SDK интерфейсі тараптар келісімі бойынша өзгертіліп/кеңейтілуі мүмкін, егер қажет болса class SDK(ABC): @abstractmethod def count_banknotes(self, banknote: int) -> int: pass @abstractmethod def move_banknote_to_dispenser(self, banknote: int, count: int) -> None: pass @abstractmethod def open_dispenser(self) -> None: pass
class ATM(SKD): def __init__(self, atm_api: "SKD"): self.atm_api: SKD = atm_api self.bills_count: dict[int:int] = {bill: self.atm_api.count_banknotes(bill) for bill in BILLS} def withdraw(self, amount: int) -> bool: bills_plan: dict[int: int] = {} remaining = amount for bill in BILLS: available = self.bills_count[bill] take = min(remaining // bill, available) if take > 0: bills_plan[bill] = take remaining -= take * bill if remaining != 0: return False bills_count_const = {50: 0, 100: 2, 500: 0, 1000: 0, ...}, expected = True @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), ({5000: 1, 1000: 0, 500: 0, 100: 2, 50: 0}, True) ] ) def test_false(bills_count_const, expected): atm = ATM(FakeSDK()) atm.bills_count = bills_count_const amount = 1000 res = atm.withdraw(amount) assert res == expected
```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] == 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-мен жұмыс тәжірибеңіз қандай және оны жобаларыңызда қанша уақыт қолданасыз?
Ілеспе сұхбат беруші кандидат мәселе шартын көріп тұрғанын анықтайды.