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
```python # a = "abc", niet leeg, uniek (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 ```
Wat is de grootste hoeveelheid gegevens die u in een database hebt moeten opslaan?
Deel uw laatste professionele ervaring en prestaties.
```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 ``` De taak is om een functie `min_s(a: str, s: str) -> str` te implementeren die de kleinste substring in `s` vindt die alle tekens bevat van de string `a`.
Heb je ervaring met het ontwikkelen van programma's met multithreading of asynchronie?
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
Hoe weet je of je een specifiek teken (bijvoorbeeld het teken A) kunt verwijderen bij het verkleinen van het venster vanaf links zonder de dekking van het alfabet te verliezen?
""" Er wordt een set van stadspaar gegeven: - tussen elk paar steden heeft een medewerker een rechtstreekse vlucht gemaakt; - de informatie over de richting van de vlucht is verloren; - ook de volgorde van de vluchten is verloren. Het is bekend dat alle vluchten tot één reis behoren. Elke volgende vlucht begon in de stad waar de vorige eindigde. Geen enkele stad is door de medewerker twee keer bezocht. De startstad van de reis verschilt ook van het eindpunt. Print de steden in de volgorde van de route. Er zijn twee mogelijke antwoorden, elk is geschikt. Voorbeelden: [("Moskou", "Belgrado")] -> ["Moskou", "Belgrado"] [(("Moskou", "Belgrado"), ("Moskou", "Erevan")) -> ["Erevan", "Moskou", "Belgrado"] """ Flight = tuple[str, str] def get_route(flights: list[Flight]) -> list[str]: ...
Welke datastructuur kan worden gebruikt om een graf te representeren in deze taak?
Welke werkvorm overweeg je?
# a = "abc", niet leeg, uniek # s = "dfagabfkacebf" => "aceb" # s = ""
Wat is de uiteindelijke complexiteit van het algoritme na het verwijderen van de kwadratische operatie? Is het waar dat de grootte van het alfabet m geen invloed heeft op de tijdcomplexiteit?
Welke databases of andere opslagplaatsen gebruik je in je werk?
Wat is het maximale aantal verzoeken per seconde dat de zwaarst belaste service heeft verwerkt?
Gegeven een reeks gehele getallen. Het is nodig om het minimaal mogelijke product van een paar elementen uit de reeks te vinden (paar - twee willekeurige elementen, niet noodzakelijk opeenvolgend). Bijvoorbeeld, voor de reeks getallen 9 4 2 5 3, is het antwoord 6.
Heb je eerder vacatures bij [bedrijf] overwogen en contact gehad met recruiters?