目錄
尋找解決方案的方法
上述方法的C 程式碼
範例
輸出
上述程式碼的解釋
結論
首頁 後端開發 C++ 使用C++編寫,找出由三條線上的一組點組成的三角形的數量

使用C++編寫,找出由三條線上的一組點組成的三角形的數量

Sep 09, 2023 am 09:53 AM
c編寫 三角形數量

使用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中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

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

使用C++編寫,找出由三條線上的一組點組成的三角形的數量 使用C++編寫,找出由三條線上的一組點組成的三角形的數量 Sep 09, 2023 am 09:53 AM

現在我們得到了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如何把線打斷成幾等分 Feb 27, 2024 am 11:40 AM

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

「丶」這個點用鍵盤怎麼打出來? 「丶」這個點用鍵盤怎麼打出來? Feb 15, 2024 pm 01:51 PM

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

如何在Java中檢查三個點是否共線? 如何在Java中檢查三個點是否共線? Sep 05, 2023 pm 06:41 PM

如果三個點都位於一條直線上,則稱這三個點共線。如果這些點不在同一條直線上,則它們不是共線點。這意味著如果三個點(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*

使用C++編程,找到在網格中從一個點到另一個點的路徑數 使用C++編程,找到在網格中從一個點到另一個點的路徑數 Aug 29, 2023 pm 10:25 PM

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

安鈦克650電源主機板線介面的接腳數量是多少? (安鈦克650電源接線圖) 安鈦克650電源主機板線介面的接腳數量是多少? (安鈦克650電源接線圖) Jan 03, 2024 am 10:46 AM

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

如何在Java中找到一條線的中點? 如何在Java中找到一條線的中點? Sep 02, 2023 pm 06:45 PM

假設(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)

通過一個點的最大不同直線數在C中 通過一個點的最大不同直線數在C中 Aug 26, 2023 am 10:25 AM

我們得到每條線的數字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

See all articles