Sobes.tech

Python

Partagez votre dernière expérience professionnelle et vos réalisations.

Junior — Middle
116

```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 ``` La tâche consiste à implémenter une fonction `min_s(a: str, s: str) -> str` qui trouve la sous-chaîne minimale dans `s` contenant tous les caractères de la chaîne `a`.

115

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

115

""" Une séquence de nombres entiers est donnée. Il faut trouver le produit minimal possible d'une paire d'éléments de la séquence (une paire - deux éléments quelconques, pas nécessairement consécutifs). Par exemple, pour la séquence de nombres 9 4 2 5 3, la réponse sera 6. """ def find_min_product(arr: list[int]) -> int: ...

115

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

114

Avez-vous une expérience dans le développement de programmes avec multithreading ou asynchronie?

112

Comment savoir si l'on peut supprimer un caractère spécifique (par exemple, le caractère A) en réduisant la fenêtre depuis la gauche sans perdre la couverture de l'alphabet?

111

# a = "abc", non vide, unique # s = "dfagabfkacebf" => "aceb" # s = ""

110

Quel format de travail envisages-tu?

110

Quelle est la complexité finale de l'algorithme après avoir éliminé l'opération quadratique ? Est-il vrai que la taille de l'alphabet m n'influence en rien la complexité temporelle ?

110

""" Un ensemble de paires de villes est donné : - entre chaque paire de villes, un employé a effectué un vol direct ; - l'information sur la direction du vol est perdue ; - l'ordre des vols est également perdu. Il est connu que tous les vols appartiennent à un seul voyage. Chaque vol suivant commence dans la ville où le précédent s'est terminé. Aucune ville n'a été visitée deux fois par l'employé. La ville de départ du voyage est différente de la ville d'arrivée. Affichez les villes dans l'ordre de la route. Il y a deux réponses possibles, n'importe laquelle convient. Exemples : [("Moscou", "Belgrade")] -> ["Moscou", "Belgrade"] [(("Moscou", "Belgrade"), ("Moscou", "Erevan")) -> ["Erevan", "Moscou", "Belgrade"] """ Flight = tuple[str, str] def get_route(flights: list[Flight]) -> list[str]: ...

110

Quelle structure de données peut-on utiliser pour représenter un graphe dans cette tâche?

110

Quelles bases de données ou autres stockages utilises-tu dans ton travail?

108

Quelle est la quantité maximale de requêtes par seconde traitée par le service le plus sollicité?

105

Il s'agit d'une séquence de nombres entiers. Il est nécessaire de trouver le produit minimal possible d'une paire d'éléments de la séquence (une paire étant deux éléments quelconques, pas nécessairement consécutifs). Par exemple, pour la séquence de nombres 9 4 2 5 3, la réponse sera 6.

104

As-tu déjà envisagé des postes vacants chez [entreprise], as-tu contacté des recruteurs?

98
/5