""" Una sequenza di numeri interi è data. È necessario trovare il prodotto minimo possibile di una coppia di elementi della sequenza (coppia - due elementi qualsiasi, non necessariamente consecutivi). Ad esempio, per la sequenza di numeri 9 4 2 5 3, la risposta sarà 6. """ 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
Qual è stato il volume di dati più grande che hai dovuto archiviare in un database?
""" Un insieme di coppie di città è dato: - tra ogni coppia di città, un dipendente ha effettuato un volo diretto; - l'informazione sulla direzione del volo è perduta; - anche l'ordine dei voli è perduto. Si sa che tutti i voli appartengono a un unico viaggio. Ogni volo successivo iniziava dalla città in cui si concludeva il precedente. Nessuna città è stata visitata due volte dal dipendente. La città di inizio del viaggio è anche diversa dal punto finale. Stampa le città in ordine di percorso. Esistono due risposte possibili, qualsiasi risposta va bene. Esempi: [("Mosca", "Belgrado")] -> ["Mosca", "Belgrado"] [("Mosca", "Belgrado"), ("Mosca", "Erevan")] -> ["Erevan", "Mosca", "Belgrado"] Flight = tuple[str, str] def get_route(flights: list[Flight]) -> list[str]: ...
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
Qual è il massimo numero di richieste al secondo che il servizio più carico ha gestito?
```python # a = "abc", non vuoto, unico (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 ```
Quale formato di lavoro consideri?
```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 ``` L'obiettivo è implementare una funzione `min_s(a: str, s: str) -> str` che trovi la sottostringa minima in `s` che contiene tutti i caratteri della stringa `a`.
Quali database o altri archivi utilizzi nel tuo lavoro?
Come capire se è possibile rimuovere un carattere specifico (ad esempio, il carattere A) riducendo la finestra da sinistra senza perdere la copertura dell'alfabeto?
Quale struttura dati può essere usata per rappresentare un grafo in questo compito?
Qual è la complessità finale dell'algoritmo dopo aver eliminato l'operazione quadratica? È vero che la dimensione dell'alfabeto m non influisce affatto sulla complessità temporale?
""" Viene fornito un insieme di coppie di città: - tra ogni coppia di città, un dipendente ha effettuato un volo diretto; - le informazioni sulla direzione del volo sono perse; - anche l'ordine dei voli è perso. Si sa che tutti i voli appartengono a un unico viaggio. Ogni volo successivo iniziava dalla città in cui si concludeva il precedente. Nessuna città è stata visitata due volte dal dipendente. La città di inizio del viaggio è anche diversa dal punto finale. Stampa le città in ordine di percorso. Ci sono due risposte possibili, qualsiasi risposta va bene. Esempi: [("Mosca", "Belgrado")] -> ["Mosca", "Belgrado"] [(("Mosca", "Belgrado"), ("Mosca", "Erevan")) -> ["Erevan", "Mosca", "Belgrado"] """ Flight = tuple[str, str] def get_route(flights: list[Flight]) -> list[str]: ...
# a = "abc", non vuoto, unico # s = "dfagabfkacebf" => "aceb" # s = ""
Si tratta di una sequenza di numeri interi. È necessario trovare il prodotto minimo possibile di una coppia di elementi della sequenza (una coppia sono due elementi qualsiasi, non necessariamente consecutivi). Ad esempio, per la sequenza di numeri 9 4 2 5 3, la risposta sarà 6.
Hai mai considerato in passato offerte di lavoro presso [azienda], hai contattato dei recruiter?