Table des matières
Méthode de recherche de solutions
Code C++ pour la méthode ci-dessus
Exemple
Sortie
Explication du code ci-dessus
Conclusion
Maison développement back-end C++ Écrit en C++, trouvez le nombre de triangles formés par un ensemble de points sur trois droites

Écrit en C++, trouvez le nombre de triangles formés par un ensemble de points sur trois droites

Sep 09, 2023 am 09:53 AM
indiquer écrit en c Fil nombre de triangles

Écrit en C++, trouvez le nombre de triangles formés par un ensemble de points sur trois droites

Maintenant nous avons plusieurs points présents dans les 3 lignes par exemple, nous devons découvrir combien de triangles ces points peuvent former

Input: m = 3, n = 4, k = 5
Output: 205

Input: m = 2, n = 2, k = 1
Output: 10
Copier après la connexion

Nous allons appliquer quelques mathématiques combinatoires pour résoudre ce problème et formuler quelques formules pour résoudre ce problème. question.

Méthode de recherche de solutions

Dans cette méthode, nous élaborerons une formule : en appliquant la combinatoire à la situation actuelle, cette formule nous fournira le résultat.

Code C++ pour la méthode ci-dessus

Il s'agit de la syntaxe C++ que nous pouvons utiliser comme entrée pour résoudre le problème donné -

Exemple

#include <bits/stdc++.h>

#define MOD 1000000007

using namespace std;

long long fact(long long n) {
   if(n <= 1)
   return 1;
   return ((n % MOD) * (fact(n-1) % MOD)) % MOD;
}
long long comb(int n, int r) {
   return (((fact(n)) % MOD) / ((fact(r) % MOD) * (fact(n-r) % MOD)) % MOD);
}

int main() {
   int n = 3;
   int m = 4;
   int r = 5;
   long long linen = comb(n, 3); // the combination of n with 3.
   long long linem = comb(m, 3); // the combination of m with 3.
   long long liner = comb(r, 3); //the combination of r with 3.
   long long answer = comb(n + m + r, 3); // all possible comb of n, m , r with 3.
   answer -= (linen + linem + liner);
   cout << answer << "\n";
   return 0;
}
Copier après la connexion

Sortie

205
Copier après la connexion

Explication du code ci-dessus

Dans cette méthode, nous trouvons Tous combinaisons possibles de n+m+r et de trois nombres, c'est-à-dire comb(n+m+r, 3). Maintenant, vous savez que la condition pour que trois points deviennent un triangle est qu'ils ne peuvent pas être colinéaires, nous trouvons donc tous les points colinéaires possibles obtenus en additionnant les combinaisons de n, m, r, puis combinons cette somme avec n+ En soustrayant le changements dans les trois nombres m+r, nous obtenons la réponse et l’imprimons.

Conclusion

Cet article explique comment calculer combien de triangles peuvent être formés à partir d'un ensemble de points sur trois droites en appliquant la combinatoire. Nous avons également appris le programme C++ et la méthode complète (méthode normale) pour résoudre ce problème. Nous pouvons écrire le même programme dans d'autres langages comme C, Java, Python et d'autres langages. J'espère que cet article vous sera utile.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Écrit en C++, trouvez le nombre de triangles formés par un ensemble de points sur trois droites Écrit en C++, trouvez le nombre de triangles formés par un ensemble de points sur trois droites Sep 09, 2023 am 09:53 AM

Maintenant, nous obtenons plusieurs points présents sur 3 lignes ; par exemple, nous devons savoir combien de triangles ces points peuvent former Input:m=3,n=4,k=5Output:205Input:m=2,n=2, k =1Sortie : 10 Nous appliquerons des mathématiques combinatoires pour résoudre ce problème et formulerons des formules pour résoudre ce problème. Méthode pour trouver une solution Dans cette méthode, nous élaborerons une formule : en appliquant la combinatoire à la situation actuelle, cette formule nous fournira le résultat. Code C++ pour la méthode ci-dessus Il s'agit d'une syntaxe C++ que nous pouvons utiliser comme entrée pour résoudre le problème donné - exemple #include<bits/stdc++.h>#define

Comment diviser la ligne en parties égales en CAO Comment diviser la ligne en parties égales en CAO Feb 27, 2024 am 11:40 AM

Dans le processus de conception CAO, nous devons souvent diviser une certaine ligne ou courbe en parties égales. Cette exigence est extrêmement courante dans divers scénarios, tels que le dessin technique, la conception de produits, l'urbanisme, etc. Par exemple, la fonction de division égale est particulièrement importante lorsqu'il est nécessaire de disposer les lampadaires de manière égale à une distance spécifique ou de placer les vis à égale distance sur les côtés d'un produit. Afin de répondre à cette exigence précise de segmentation, les logiciels de CAO nous mettent à disposition une variété d’outils et de méthodes. Alors comment interrompre la ligne ? Ce guide tutoriel vous donnera une introduction détaillée. Les utilisateurs qui souhaitent en savoir plus peuvent venir l'apprendre ensemble ci-dessous ! Partagez la méthode pour diviser la ligne en parties égales à l'aide de CAD 1. Ouvrez le logiciel CAD2023 et créez des graphiques CAO. Comme indiqué ci-dessous : 2. Cliquez sur Modifier

Comment taper le point '丶' à l'aide du clavier ? Comment taper le point '丶' à l'aide du clavier ? Feb 15, 2024 pm 01:51 PM

Lorsqu'ils tapent sur un clavier, de nombreux utilisateurs sont curieux de savoir comment taper le point « 丶 » sur le clavier ? Jetons donc un œil à la méthode que l'éditeur vous propose pour taper ce symbole « 丶 » sur le clavier. 1. Cliquez sur "丶" et tapez directement sur le clavier [dian]. Vous verrez le signe de ponctuation [丶] sur la barre de sélection. 2. Symboles spéciaux Dans la méthode de saisie Sogou Pinyin, lors du passage en mode chinois, appuyer sur la touche v fera apparaître des symboles spéciaux. Ces symboles incluent des nombres (par exemple : v123), des dates (par exemple : v2013/1/1), des calculs (par exemple : v1+1) et des fonctions (par exemple : v2~3). Ces symboles facilitent la saisie de diverses informations. 2. Appuyez ensuite à nouveau sur la touche numérique, n'importe quel nombre de 0 à 9 peut être utilisé

Comment vérifier si trois points sont colinéaires en Java ? Comment vérifier si trois points sont colinéaires en Java ? Sep 05, 2023 pm 06:41 PM

Si trois points sont alignés, on dit qu’ils sont colinéaires. Si les points ne sont pas sur la même droite, ils ne sont pas colinéaires. Cela signifie que si trois points (x1,y1), (x2,y2), (x3,y3) sont sur la même droite, ils sont colinéaires. Parmi eux, x1, y1, x2, y2, x3, y3 sont des points sur l'axe des x et l'axe des y, (x1, y1), (x2, y2), (x3, y3) sont les coordonnées. Mathématiquement, il existe deux façons de déterminer si trois points sont colinéaires. Trouvez l'aire d'un triangle en utilisant les points. Si l'aire du triangle est nulle, alors les trois points sont colinéaires. Formule pour trouver une zone de triangle = 0,5*[x1*(y2-y3)+x2*

Quel est le nombre de broches dans l'interface du câble de la carte mère de l'alimentation Antec 650 ? (Schéma de câblage de l'alimentation Antec 650) Quel est le nombre de broches dans l'interface du câble de la carte mère de l'alimentation Antec 650 ? (Schéma de câblage de l'alimentation Antec 650) Jan 03, 2024 am 10:46 AM

Combien de broches possède le câble de la carte mère Antec 650w ? Le câble d'alimentation de la carte mère d'alimentation Antec 650W est généralement composé de 24 broches, ce qui constitue la plus grande interface d'alimentation de la carte mère. Sa fonction est de connecter la carte mère et l'alimentation électrique pour alimenter la carte mère et les autres composants du système. De plus, l'alimentation Antec 650W peut également inclure d'autres types d'interfaces d'alimentation, telles que CPU8pin, PCIe6+2pin, etc., pour connecter d'autres composants tels que le CPU et les cartes graphiques indépendantes. Tutoriel sur le routage de la carte mère Le routage de la carte mère est le processus de connexion de circuits entre divers composants électroniques lors de la conception d'une carte mère. Dans ce processus, des facteurs tels que la stabilité du circuit, la vitesse de transmission du signal et la précision doivent être pris en compte. Lorsque vous acheminez le câblage selon le schéma de circuit, faites attention à la disposition et sélectionnez la largeur et la distance de ligne appropriées à éviter.

Programmation en C++, trouver le nombre de chemins d'un point à un autre dans une grille Programmation en C++, trouver le nombre de chemins d'un point à un autre dans une grille Aug 29, 2023 pm 10:25 PM

Dans cet article, nous sommes confrontés à un problème dans lequel nous devons trouver le nombre total de chemins du point A au point B, où A et B sont des points fixes, c'est-à-dire A est le point du coin supérieur gauche de la grille et B est le point inférieur. point du coin droit, par exemple −Input:N=5Output:252Input:N=4Output:70Input:N=3Output:20 Dans le problème donné, nous pouvons formaliser la réponse et dériver le résultat à travers des observations simples. Méthode de recherche de solution Dans cette méthode, nous dérivons une formule en observant que lorsque nous traversons la grille de A à B, nous devons aller à droite n fois et descendre n fois, ce qui signifie que nous devons trouver toutes les combinaisons de chemins possibles, nous obtenons donc

Comment trouver le milieu d'une ligne en Java ? Comment trouver le milieu d'une ligne en Java ? Sep 02, 2023 pm 06:45 PM

Supposons que (x1, y1) soit le point de départ de la ligne et (x2, y2) le point final de la ligne. Pour obtenir le milieu d’une ligne droite, nous devons utiliser la formule du milieu d’une ligne droite. Midpoint=((x1+x2)/2,(y1+y2)/2) Dans cet article, nous verrons comment trouver le milieu d'un segment de droite à l'aide du langage de programmation Java, lorsque les deux points du segment de droite sont connus . Montrez quelques exemples Exemple 1 Supposons que les deux points soient (2,3) et (3,5) En utilisant la formule du milieu du segment de droite, a=(x1+x2)/2=(2+3)/2= 2.5b=(y1+y2)/2=(3+5)/2=4.0 Par conséquent, le milieu de la droite est (2.5,4.0) Exemple 2 Supposons que les deux points soient (2,-3) et (-3 ,5)

Nombre maximum de droites distinctes passant par un point de C Nombre maximum de droites distinctes passant par un point de C Aug 26, 2023 am 10:25 AM

On obtient le nombre N pour chaque droite et les coordonnées des deux points (x1,y1) et (x2,y2). Le but est de trouver le nombre maximum de lignes droites à partir des lignes droites données qui peuvent passer par un seul point de telle sorte qu'aucune ligne droite ne se recouvre et qu'aucune rotation ne soit effectuée. Nous représenterons la ligne droite comme (paire)m,c) où y=mx+c et m est la pente m=y2-y1/x2-x1 Étant donné c1!=c2, les lignes avec le même m sont parallèles. Nous calculerons différentes pentes en mètres. Pour une droite verticale, si x1=x2, alors pente=INT_MAX, sinon m. Comprenons avec un exemple. Entrée Ligne1(x1,y1)=(4,10)(x2,y2)=(2,2)Ligne2(x1,y1)=(2

See all articles