Python BasesDifficile

Nombre maximum de poignées de main

Guide détaillé et implémentation de Python pour le problème « Nombre maximum de poignées de main ».

Énoncé du problème

Difficile

Écrivez une fonction max_handshakes(n) qui prend un entier positif n représentant le nombre de personnes dans une pièce et renvoie le nombre maximum de poignées de main qui peuvent se produire si chaque personne serre la main de toutes les autres personnes exactement une fois.

La formule est : max_handshakes = n * (n - 1) / 2. En effet, chaque paire de personnes se serre la main une fois.

Contraintes
  • 1 <= n <= 10^4

Exemples

Example 1
Input
max_handshakes(5)
Output
10
Explanation

5 people: 5 × 4 / 2 = 10 handshakes. Each of the 5 people shakes hands with 4 others, divided by 2 since each handshake is counted twice.

Example 2
Input
max_handshakes(2)
Output
1
Explanation

2 people can only have 1 handshake between them.

Example 3
Input
max_handshakes(10)
Output
45
Explanation

10 × 9 / 2 = 45 handshakes.

Need a Hint?
Pensez à utiliser des structures de données spécifiques à Numbers, comme des ensembles ou des tas.
Edge Cases to Watch
  • Structures d'entrée vides
  • Entrées à élément unique
  • Grandes limites numériques

Prêt à résoudre ?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Ouvrir dans l'éditeur
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Ressources Python recommandées

Développez vos connaissances avec des didacticiels interactifs, des aide-mémoire et des comparaisons de codes associés.