使用C++編寫,找出由三條線上的一組點組成的三角形的數量
現在我們得到了3 行中存在的幾個點;例如,我們需要找出這些點可以形成多少個三角形
Input: m = 3, n = 4, k = 5 Output: 205 Input: m = 2, n = 2, k = 1 Output: 10
我們將應用一些組合數學來解決這個問題,並制定一些公式來解決這個問題。
尋找解決方案的方法
在這種方法中,我們將設計一個公式:將組合學應用於當前情況,這個公式將為我們提供結果。
上述方法的C 程式碼
這是我們可以用來求解的輸入的C 語法給定的問題-
範例
#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; }
輸出
205
上述程式碼的解釋
在這個方法中,我們找到n m r與三個數的所有可能組合,即comb(n m r, 3)。現在,你知道,三個點變成一個三角形的條件是它們不能共線,所以我們找到了由n、m、r的組合求和得到的所有可能的共線點,然後將這個求和與n m r的三個數的變化相減,我們得到答案,並將其印出來。
結論
本文討論瞭如何透過應用組合數學來計算由三條線上的一組點可以形成多少個三角形。我們也學習了解決這個問題的C 程序和完整的方法(正常方法)。我們可以用其他語言如C、Java、Python和其他語言來寫相同的程式。希望這篇文章對您有幫助。
以上是使用C++編寫,找出由三條線上的一組點組成的三角形的數量的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

現在我們得到了3行中存在的幾個點;例如,我們需要找出這些點可以形成多少個三角形Input:m=3,n=4,k=5Output:205Input:m=2,n=2, k=1Output:10我們將應用一些組合數學來解決這個問題,並制定一些公式來解決這個問題。尋找解決方案的方法在這種方法中,我們將設計一個公式:將組合學應用於當前情況,這個公式將為我們提供結果。上述方法的C++程式碼這是我們可以用來求解的輸入的C++語法給定的問題-範例#include<bits/stdc++.h>#define

在CAD設計過程中,我們常常需要將某條直線或曲線分割成幾等分。這種需求在多種場景中都極為常見,如工程繪圖、產品設計、城市規劃等。例如,當需要在特定距離內均勻地佈置燈柱,或在產品側面上等距地設定螺絲時,等分分割功能就顯得尤為重要。為了滿足這種精確的分割需求,CAD軟體為我們提供了多種工具和方法。那麼究竟該如何打斷線路呢,這篇教程攻略就將為大家帶來詳細的內容介紹,想要了解的用戶們就快來下文中一起學習一下吧! cad把線打斷成幾等分方法分享1、打開CAD2023軟體,創建CAD圖形。如下圖:2、點擊修改

在使用鍵盤的打字的時候會有很多的用戶比較好奇「丶」這個點用鍵盤是怎麼打出來的?那麼下面就來看看小編帶給大家的鍵盤上打出這個「丶」符號的方法吧。一、「丶」點用鍵盤打出打出直接輸入【dian】在選擇欄上就會看到【丶】的標點符號。二、特殊符號在搜狗拼音輸入法中,切換至中文狀態後,按下v鍵會出現一些特殊的符號。這些符號包括數字(如:v123)、日期(如:v2013/1/1)、算式(如:v1+1)和函數(如:v2~3)。這些符號可以方便地輸入各種不同的資訊。 2.接著再按下數字鍵,0到9隨便一個都可以

如果三個點都位於一條直線上,則稱這三個點共線。如果這些點不在同一條直線上,則它們不是共線點。這意味著如果三個點(x1,y1),(x2,y2),(x3,y3)在同一條直線上,則它們是共線的。其中,x1、y1、x2、y2、x3、y3是x軸和y軸上的點,(x1,y1)、(x2,y2)、(x3,y3)是座標。數學上,有兩種方法可以確定三個點是否共線。透過使用點求三角形的面積,如果三角形的面積為零,則三個點共線。 Formulatofindareaoftriangle=0。5*[x1*(y2-y3)+x2*

在本文中,我們給了一個問題,我們需要找到從點A到點B的總路徑數,其中A和B是固定點,即A是網格中的左上角點,B是網格中的右下角點,例如−Input:N=5Output:252Input:N=4Output:70Input:N=3Output:20在給定的問題中,我們可以透過簡單的觀察來形式化答案並得出結果。尋找解決方案的方法在這種方法中,我們透過觀察得出一個公式,即從A到B穿過網格時,我們需要向右行進n次,向下行進n次,這意味著我們需要找到所有可能的路徑組合,因此我們得到了

安鈦克650w主機板線是幾pin的安鈦克650W電源主機板的電源線通常是24pin的,這是主機板上最大的電源介面。它的作用是連接主機板和電源,為主機板和其他系統組件提供電源。此外,安鈦克650W電源還可能包含其他類型的電源接口,如CPU8pin、PCIe6+2pin等,用於連接CPU和獨立顯示卡等其他組件。主機板走線教學主機板走線是指在設計主機板時,將各個電子元件之間的電路連接起來的過程。在這個過程中,需要考慮電路的穩定性、訊號傳輸的速度和準確性等因素。根據電路圖進行走線時,需注意佈局和選擇適當的線寬和距離,避免

假設(x1,y1)是線的起點,(x2,y2)是線的終點。要得到直線的中點,我們必須使用直線的中點公式。 Midpoint=((x1+x2)/2,(y1+y2)/2)在本文中,我們將看到如何使用Java程式語言找到線段的中點,當線段的兩個點已知時。展示給你一些實例實例1假設這兩個點是(2,3)和(3,5)透過使用線段的中點公式,a=(x1+x2)/2=(2+3)/2= 2.5b=(y1+y2)/2=(3+5)/2=4.0因此,直線的中點是(2.5,4.0)實例2假設這兩個點是(2,-3)和(-3 ,5)

我們得到每條線的數字N和兩點(x1,y1)和(x2,y2)的座標。目標是從給定的直線中找到可以穿過單點的最大直線數,使得沒有兩條直線相互覆蓋,並且不執行旋轉。我們將把直線表示為(對)m,c)其中y=mx+c,m是斜率m=y2-y1/x2-x1給定c1!=c2,具有相同m的線是平行的。我們將計算不同的坡度(公尺)。對於垂直線,如果x1=x2,則斜率=INT_MAX,否則為m。讓我們透過範例來理解。輸入 Line1(x1,y1)=(4,10)(x2,y2)=(2,2)Line2(x1,y1)=(2
