Orivel Orivel
Ouvrir le menu

Dernieres taches et discussions

Parcourez les derniers contenus benchmark (taches et discussions). Filtrez par genre pour cibler ce que vous voulez comparer.

Genres de comparaison

Liste des modeles

Conception de systèmes

Google Gemini 2.5 Pro VS OpenAI GPT-5 mini

Concevoir un service de raccourcissement d'URL à grande échelle

On vous confie la conception d'un service de raccourcissement d'URL (similaire à bit.ly ou tinyurl.com) qui doit respecter les contraintes suivantes : 1. Le service doit supporter 100 millions de nouveaux raccourcissements d'URL par mois. 2. Le ratio lecture/écriture est de 100:1 (c.-à-d. 10 milliards de redirections par mois). 3. Les URL raccourcies doivent comporter au maximum 7 caractères (alphanumériques). 4. Le système doit garantir qu'une URL raccourcie, une fois créée, n'expire jamais à moins d'être explicitement supprimée par l'utilisateur. 5. La latence de redirection (de la réception de la requête à l'émission du HTTP 301/302) doit être inférieure à 10 millisecondes au 99e centile. 6. Le système doit rester disponible même si un centre de données entier devient indisponible. 7. Le service doit prendre en charge un tableau de bord d'analyse optionnel affichant les comptes de clics, la répartition géographique et les données des référents par URL raccourcie, mais l'analytique ne doit pas dégrader la performance des redirections. Fournissez une conception système complète qui aborde : A. Architecture haute-niveau : Décrivez les composants principaux et comment ils interagissent. B. Stratégie de génération d'URL : Comment vous générez des codes courts uniques, pourquoi vous avez choisi cette approche, et comment vous gérez les collisions. C. Modèle de données et stockage : Quelles bases de données ou systèmes de stockage vous utilisez et pourquoi. Incluez les considérations de schéma. D. Optimisation du chemin de lecture : Comment vous atteignez l'exigence de latence pour les redirections à cette échelle. E. Chemin d'écriture : Comment les nouvelles URL sont créées et persistées de manière fiable. F. Stratégie de mise à l'échelle : Comment le système évolue horizontalement pour gérer la croissance. G. Fiabilité et tolérance aux pannes : Comment vous gérez les pannes de centres de données, la réplication et le basculement. H. Pipeline d'analytique : Comment vous collectez, traitez et servez les données analytiques sans impacter le chemin critique de redirection. I. Principaux compromis : Identifiez au moins trois compromis significatifs que vous avez faits dans votre conception et justifiez chacun. Soyez précis concernant les technologies, protocoles et estimations numériques lorsque c'est pertinent (par exemple, calculs de stockage, estimations de QPS, tailles de cache, analyse de l'espace de clés des codes courts).

151
18 Mar 2026 22:59

Programmation

Google Gemini 2.5 Pro VS Anthropic Claude Sonnet 4.6

Implémenter un magasin clé-valeur versionné avec requêtes historiques

Écrivez du code qui implémente un magasin clé-valeur versionné en mémoire prenant en charge les lectures historiques. Le magasin commence vide et traite une séquence de commandes. Chaque commande mutative réussie crée exactement un nouveau numéro de version global, en commençant par 1. Les commandes en lecture seule ne doivent pas créer de version. Les clés et valeurs sont des chaînes sensibles à la casse sans espaces. Les versions sont des entiers positifs. Commands: SET key value Create or overwrite key with value. DELETE key Remove key if it exists. GET key Return the current value for key, or NULL if the key does not exist. GET_VERSION key version Return the value associated with key immediately after the specified global version was created, or NULL if the key did not exist at that version. If version is greater than the latest existing version, treat it as invalid and return INVALID_VERSION. HISTORY key Return all historical states for the key in increasing version order, including deletions, formatted as version:value pairs separated by commas. Use NULL for deleted or absent-after-mutation states. If the key has never been affected by any mutating command, return EMPTY. Input format: The first line contains an integer N, the number of commands. The next N lines each contain one command. Output format: For every GET, GET_VERSION, and HISTORY command, print one line with the result. Behavior details and edge cases: - Every SET always creates a new version, even if the value is unchanged. - Every DELETE always creates a new version, even if the key does not exist. - Versions are global across all keys, not per key. - HISTORY for a key should include only versions where that key was directly affected by SET or DELETE. - If a key was deleted and later set again, both events must appear in HISTORY. - Efficiency matters: assume up to 200000 commands, with many historical queries. Your solution should read from standard input and write to standard output. Include the full working program in one file. You may use any mainstream programming language, but the code should be complete and executable as written.

171
18 Mar 2026 22:33

Programmation

Google Gemini 2.5 Flash VS OpenAI GPT-5.2

Implémenter une skip-list concurrente sans verrou prenant en charge des requêtes de plage

Concevez et implémentez une structure de données skip list concurrente dans le langage de votre choix (C++, Java, Rust, Go ou Python) qui prenne en charge les opérations suivantes : 1. **insert(key, value)** – Insérer une paire clé-valeur. Si la clé existe déjà, mettre à jour la valeur de façon atomique. Retourne true si une nouvelle clé a été insérée, false si la valeur a été mise à jour. 2. **remove(key)** – Supprimer logiquement la paire clé-valeur. Retourne true si la clé a été trouvée et supprimée, false sinon. 3. **find(key)** – Retourner la valeur associée à la clé, ou indiquer son absence. 4. **range_query(low, high)** – Retourner toutes les paires clé-valeur telles que low <= key <= high, sous forme d'une liste triée par clé. Le résultat doit être un instantané cohérent : il ne doit pas inclure de clés qui n'ont jamais été simultanément présentes pendant l'exécution de l'opération. 5. **size()** – Retourner le nombre approximatif d'éléments actifs (non supprimés). Exigences et contraintes : - La skip-list doit être sûre pour un usage concurrent par plusieurs threads effectuant n'importe quel mélange des opérations ci-dessus simultanément, sans verrou global unique. Vous pouvez utiliser des verrous fins, des techniques sans verrou (CAS), ou une combinaison. - La suppression paresseuse est acceptable : les nœuds peuvent être marqués logiquement comme supprimés avant leur suppression physique. - La génération probabiliste des niveaux doit utiliser une distribution géométrique standard avec p=0.5 et un niveau maximum de 32. - Les clés sont des entiers 64 bits ; les valeurs sont des chaînes de caractères. - Inclure des considérations appropriées de sécurité mémoire. Si vous utilisez un langage sans ramasse-miettes, expliquez ou implémentez votre stratégie de récupération (par exemple, epoch-based reclamation, hazard pointers). Livrables : 1. Code source complet et compilable/exécutable avec des commentaires expliquant votre stratégie de concurrence. 2. Un test ou une démonstration qui lance plusieurs threads effectuant des insertions, suppressions, recherches et requêtes de plage concurrentes, et qui valide la correction (par exemple, pas de mises à jour perdues, pas de lectures fantômes dans les requêtes de plage, pas de plantages). 3. Une brève section d'analyse (sous forme de commentaires ou de docstring) discutant : - Les garanties de linéarizabilité (ou d'isolation de type snapshot) que fournit votre implémentation. - La complexité temporelle attendue de chaque opération. - Les limitations connues ou les problèmes potentiels liés à ABA et comment vous les traitez. Votre solution sera évaluée sur la correction sous concurrence, la clarté du code, la robustesse de la stratégie de concurrence, la qualité du mécanisme de snapshot pour les requêtes de plage et la rigueur de l'analyse.

158 1
18 Mar 2026 22:05

Questions éducatives

Google Gemini 2.5 Pro VS OpenAI GPT-5.4

Expliquer le paradoxe du théorème de Banach–Tarski et ses implications pédagogiques

Le paradoxe de Banach–Tarski affirme qu'une boule solide dans l'espace tridimensionnel peut être décomposée en un nombre fini de morceaux non chevauchants, qui peuvent ensuite être réassemblés (en n'utilisant que des rotations et des translations) en deux boules solides, chacune identique en taille à l'original. Répondez aux questions suivantes dans un essai structuré : 1. Indiquez précisément combien de morceaux sont nécessaires dans la preuve standard du théorème de Banach–Tarski (donnez le nombre minimum exact établi dans la littérature). 2. Expliquez pourquoi ce résultat ne contredit pas la réalité physique ni la conservation de la masse. Dans votre explication, identifiez la propriété mathématique spécifique que les morceaux doivent posséder laquelle empêche qu'ils soient réalisables physiquement, et nommez l'axiome de la théorie des ensembles sur lequel la preuve repose fondamentalement. 3. Décrivez comment le concept de « mesure » (au sens de la mesure de Lebesgue) se rapporte à ce paradoxe. Pourquoi ne peut-on pas simplement dire que les volumes doivent s'additionner ? 4. Discutez de la façon dont ce théorème est utilisé dans l'enseignement des mathématiques au niveau avancé du premier cycle ou au niveau des études supérieures. Quelles leçons clés sur les fondements des mathématiques — spécifiquement concernant l'Axiome du Choix, les ensembles non mesurables et les limites de l'intuition géométrique — illustre-t-il ? Suggérez une approche pédagogique pour introduire ce sujet à des étudiants qui le rencontrent pour la première fois. Votre essai doit être rigoureux tout en restant accessible, démontrant à la fois précision mathématique et réflexion pédagogique.

161
18 Mar 2026 20:40

Programmation

Anthropic Claude Sonnet 4.6 VS OpenAI GPT-5.4

Implémenter un résolveur de dépendances en Python

Votre tâche est de créer un résolveur de dépendances pour un système de gestion de paquets simple. Écrivez une fonction Python `resolve_dependencies(package_definitions, target_package)` qui détermine l'ordre d'installation correct pour un paquet donné et ses dépendances. L'argument `package_definitions` est une liste de chaînes. Chaque chaîne définit un paquet et ses dépendances directes au format : `'PackageName: Dep1, Dep2, ...'`. Si un paquet n'a pas de dépendances, le format est `'PackageName:'`. Votre fonction doit : 1. Analyser les chaînes d'entrée pour construire un graphe de dépendances. 2. Étant donné un `target_package`, trouver toutes ses dépendances (y compris transitives). 3. Retourner une seule liste de chaînes représentant l'ordre d'installation. Cette liste doit être triée topologiquement (une dépendance doit toujours apparaître avant le paquet qui en dépend). Le `target_package` lui-même doit être le dernier élément de la liste. La liste ne doit pas contenir de doublons. 4. Détecter les dépendances circulaires. Si un cycle est trouvé, lever une `ValueError` avec un message qui indique clairement le cycle (par exemple : 'Dépendance circulaire détectée impliquant : A -> B -> A'). 5. Détecter les paquets manquants. Si un paquet liste une dépendance qui n'est pas définie dans `package_definitions`, lever une `ValueError` avec un message tel que 'Définition de paquet manquante pour : C'.

154
18 Mar 2026 20:21

Écriture créative

Anthropic Claude Opus 4.6 VS Google Gemini 2.5 Pro

Écrire une histoire d'exposition pour un musée racontée par un objet

Écrivez une nouvelle de 700 à 1000 mots destinée aux visiteurs d'un musée de la ville. L'histoire doit être racontée à la première personne par un objet banal qui a appartenu à au moins trois propriétaires différents sur une période de 80 ans. L'objet doit révéler un changement social plus vaste à travers ces changements de possession sans faire la leçon directement au lecteur. Le public visé est constitué des visiteurs généraux du musée âgés de 14 ans et plus, et le ton doit être réfléchi, vif et discrètement émouvant plutôt que mélodramatique. Éléments obligatoires : - Le narrateur doit être un objet du quotidien, pas une personne, un animal ou un être magique. - L'histoire doit inclure exactement trois scènes, chacune liée à un propriétaire différent et à une décennie différente. - Au moins une scène doit contenir un moment de malentendu que l'objet est témoin mais ne peut pas entièrement expliquer. - La dernière phrase doit réinterpréter la signification de l'objet d'une manière surprenante mais appropriée. - Ne pas utiliser de voyage dans le temps, de fantasy, ni de références explicites à des personnages historiques réels. Votre objectif est de créer un texte qui pourrait plausiblement figurer à côté de l'objet dans une exposition sur les objets ordinaires et les vies changeantes.

152
18 Mar 2026 20:03

Génération d’idées

Anthropic Claude Haiku 4.5 VS Google Gemini 2.5 Flash

Nouvelles idées de revenus pour une bibliothèque communautaire après les heures d'ouverture

Une petite bibliothèque publique souhaite utiliser son bâtiment après les heures normales de fermeture pour générer des revenus supplémentaires modestes sans compromettre sa mission de service public. Générer 12 idées distinctes de programmes ou de services que la bibliothèque pourrait organiser entre 18 h 30 et 21 h 30. Contraintes : - La bibliothèque dispose d'un budget limité et ne peut pas effectuer de rénovations majeures. - Les idées doivent tenir à l'intérieur d'un bâtiment de bibliothèque typique et être réalistes pour un personnel de 6 personnes plus des bénévoles. - Chaque idée doit être légale, familiale et accessible à une communauté d'âges mixtes. - Ne pas proposer simplement de louer l'ensemble du bâtiment pour des fêtes privées. - Au moins 4 idées doivent soutenir directement l'apprentissage, la littératie ou la cohésion communautaire. - Au moins 3 idées doivent avoir le potentiel d'attirer des adultes qui n'utilisent pas beaucoup la bibliothèque à l'heure actuelle. Pour chaque idée, fournir : - un nom court - une description d'1 à 2 phrases - pour qui c'est destiné - comment cela pourrait générer de l'argent - une raison pour laquelle c'est particulièrement réalisable pour une bibliothèque Après les 12 idées, ajouter une courte section nommant les 3 meilleures idées et expliquer brièvement pourquoi ce sont les options les plus fortes dans l'ensemble.

148
18 Mar 2026 13:33

Analyse

OpenAI GPT-5.2 VS Google Gemini 2.5 Flash-Lite

Évaluation des options de transport pour une ville de taille moyenne

Une ville de taille moyenne de 350 000 habitants connaît une augmentation de la congestion routière et de la pollution de l'air. Le conseil municipal a réduit ses choix à trois investissements majeurs en infrastructures de transport, mais ne peut en financer qu'un en raison de contraintes budgétaires. Analysez les trois options ci‑dessous, évaluez leurs compromis selon au moins quatre critères distincts (par exemple : rentabilité, impact environnemental, équité/accessibilité, calendrier de mise en œuvre, potentiel de fréquentation, évolutivité à long terme), et aboutissez à une recommandation justifiée quant à l'option que la ville devrait poursuivre. Expliquez clairement votre raisonnement et reconnaissez l'argument le plus solide contre votre recommandation. Option A : Construire une ligne de tram léger de 12 miles reliant le cœur du centre‑ville au plus grand pôle d'emploi suburbain. Coût estimé : 1,8 milliard de dollars. Durée de construction : 6 ans. Fréquentation quotidienne projetée : 25 000. Option B : Mettre en place un réseau de Bus à Haut Niveau de Service (BRT) couvrant la ville avec 4 corridors en voies réservées totalisant 40 miles. Coût estimé : 600 millions de dollars. Durée de construction : 3 ans. Fréquentation quotidienne projetée : 45 000. Option C : Investir dans une refonte complète des infrastructures cyclables et piétonnes, comprenant 80 miles de pistes cyclables protégées, des trottoirs élargis et un programme de vélos en libre‑service. Coût estimé : 250 millions de dollars. Durée de construction : 2 ans. Utilisation quotidienne projetée : 30 000 trajets.

148
18 Mar 2026 13:24

Affichage de 221 a 240 sur 426 resultats

Liens associes

X f L