""" Adott egy egész számokból álló sorozat. Meg kell találni a lehető legkisebb szorzatát egy pár elemnek a sorozatban (pár - két tetszőleges elem, nem feltétlenül egymás mellett). Például, a 9 4 2 5 3 számokból álló sorozat esetén a válasz 6 lesz. """ def find_min_product(arr: list[int]) -> int: ...
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
""" Adott egy várospárokból álló halmaz: - minden várospár között egy munkatárs közvetlen járatot hajtott végre; - a járat iránya elveszett; - valamint a járatok sorrendje is elveszett. Tudjuk, hogy minden járat egyetlen utazáshoz tartozik. Minden következő járat az előző végénél kezdődött. Egyetlen várost sem látogatott meg kétszer a munkatárs. Az utazás kezdő városa szintén különbözik a végponttól. Írja ki a városokat az útvonal sorrendjében. Két lehetséges válasz létezik, bármelyik megfelel. Példák: [("Moszkva", "Belgrád")] -> ["Moszkva", "Belgrád"] [("Moszkva", "Belgrád"), ("Moszkva", "Erevan")] -> ["Erevan", "Moszkva", "Belgrád"] Flight = tuple[str, str] def get_route(flights: list[Flight]) -> list[str]: ...
Mekkora volt az adat, amit egy adatbázisban kellett tárolnia?
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
Mekkora maximális kérés számot kezelt a legnagyobb terhelésű szolgáltatás másodpercenként?
```python # a = "abc", nem üres, egyedi (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 ```
Milyen munkafolyamatot fontolgatsz?
```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 feladat egy `min_s(a: str, s: str) -> str` függvény megvalósítása, amely megtalálja a `s` legkisebb részstringjét, amely tartalmazza az összes karaktert a `a`-ból.
Milyen adatbázisokat vagy más tárolókat használsz a munkában?
Hogyan lehet megállapítani, hogy egy adott karakter (például az A karakter) eltávolítható-e a bal oldalról történő ablak szűkítésekor anélkül, hogy elveszítenénk az ábécé lefedettségét?
Milyen adatszerkezetet lehet használni egy gráf ábrázolására ebben a feladatban?
Mi most az algoritmus végső összetettsége a négyzetes művelet kiküszöbölése után? Igaz-e, hogy az ábécé m mérete semmilyen hatással nincs a futási idő összetettségére?
# a = "abc", nem üres, egyedi # s = "dfagabfkacebf" => "aceb" # s = ""
""" Adott egy várospárokból álló halmaz: - minden várospár között egy munkatárs közvetlen járatot hajtott végre; - a járat iránya elveszett; - valamint a járatok sorrendje is elveszett. Tudott, hogy minden járat egyetlen utazáshoz tartozik. Minden következő járat az előző befejező városából indult. Egy várost sem látogatott meg kétszer a munkatárs. Az utazás kezdő városa szintén különbözik a végponttól. Írja ki a városokat az útvonal sorrendjében. Két lehetséges válasz létezik, bármelyik megfelel. Példák: [("Moszkva", "Belgrád")] -> ["Moszkva", "Belgrád"] [(("Moszkva", "Belgrád"), ("Moszkva", "Erevan")) -> ["Erevan", "Moszkva", "Belgrád"] """ Flight = tuple[str, str] def get_route(flights: list[Flight]) -> list[str]: ...
Adott egy egész számokból álló sorozat. Meg kell találni a lehető legkisebb szorzatát egy pár elemnek a sorozatból (pár - két tetszőleges elem, nem feltétlenül egymás mellett). Például, a 9 4 2 5 3 számokból álló sorozatra a válasz 6 lesz.
Korábban fontoltál már az [cég] álláslehetőségeiről, kapcsolatba léptél toborzókkal?