C++程式:計算將木棍長度增加到構成三角形所需的分鐘數
假設我們有三個數字a、b和c。有三根木棍,長度分別為a、b和c。一分鐘內,我們可以選擇一根任意木棍,將其長度增加1釐米,但不能折斷木棍。我們必須計算將它們的長度增加到能構成三角形所需的最小分鐘數。
因此,如果輸入類似於a = 2;b = 3;c = 5,則輸出為1,因為透過將a或b中的任何一個增加1,我們可以構成一個三角形 (a + b) > c。因此,一分鐘就足夠了。
步驟
為了解決這個問題,我們將遵循以下步驟:
Define an array A = { a, b, c }
sort the array A
return maximum of (A[2] - A[1] - A[0] + 1) and 0示例
讓我們來看下面的實現,以便更好地理解:
#include <bits/stdc++.h>
using namespace std;
int solve(int a, int b, int c) {
vector<int> A = { a, b, c };
sort(A.begin(), A.end());
return max(A[2] - A[1] - A[0] + 1, 0);
}
int main() {
int a = 2;
int b = 3;
int c = 5;
cout << solve(a, b, c) << endl;
}輸入
2, 3, 5
輸出
1
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP