Împărtășiți ultima experiență profesională și realizările dvs.
Python
```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 ``` Sarcina este să implementați o funcție `min_s(a: str, s: str) -> str` care găsește cea mai mică subșir în `s` care conține toate caracterele din șirul `a`.
""" Se dă o secvență de numere întregi. Este necesar să se găsească produsul minim posibil al unei perechi de elemente din secvență (o pereche - două elemente oricare, nu neapărat consecutive). De exemplu, pentru secvența de numere 9 4 2 5 3, răspunsul va fi 6. """ def find_min_product(arr: list[int]) -> int: ...
Care a fost cel mai mare volum de date pe care a trebuit să-l stocați într-o bază de date?
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
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
Ai experiență în dezvoltarea de programe cu multithreading sau asincronie?
Cum să știi dacă poți elimina un caracter specific (de exemplu, caracterul A) atunci când micșorezi fereastra din stânga, fără a pierde acoperirea alfabetului?
Ce structură de date poate fi folosită pentru a reprezenta un graf în această problemă?
Care este complexitatea finală a algoritmului după eliminarea operației cuadratice? Este adevărat că dimensiunea alfabetului m nu influențează deloc complexitatea temporală?
Ce format de lucru iei în considerare?
""" Se oferă un set de perechi de orașe: - între fiecare pereche de orașe, un angajat a efectuat un zbor direct; - informația despre direcția zborului s-a pierdut; - de asemenea, s-a pierdut și ordinea zborurilor. Se știe că toate zborurile aparțin unei singure călătorii. Fiecare zbor următor începea din orașul în care s-a terminat cel anterior. Niciun oraș nu a fost vizitat de angajat de două ori. Orașul de început al călătoriei diferă și de punctul final. Afișați orașele în ordinea traseului. Există două răspunsuri posibile, oricare este potrivit. Exemple: [("Moscova", "Belgrad")] -> ["Moscova", "Belgrad"] [(("Moscova", "Belgrad"), ("Moscova", "Erevan")) -> ["Erevan", "Moscova", "Belgrad"] """ Flight = tuple[str, str] def get_route(flights: list[Flight]) -> list[str]: ...
# a = "abc", nenul, unic # s = "dfagabfkacebf" => "aceb" # s = ""
Ce baze de date sau alte depozite folosești în muncă?
Care este numărul maxim de solicitări pe secundă procesate de cel mai încărcat serviciu?
Se oferă o secvență de numere întregi. Este necesar să găsiți cel mai mic produs posibil al unui cuplu de elemente din secvență (cuplu - două elemente oricare, nu neapărat consecutive). De exemplu, pentru secvența de numere 9 4 2 5 3, răspunsul va fi 6.
Ai considerat anterior posturi vacante la [companie], ai contactat recrutori?