演算法練習題34 無序陣列,求三個數的最大積

2021-10-19 05:13:14 字數 491 閱讀 1330

int main(int argc, char* ar**)

;

// 儲存三個最大數和兩個最小數,容器設定的大一點是為了方便排序

vectornumsmax(4,int8_min);

vectornumsmin(3,int8_max);

// 找出三個最大數字與兩個最小數字

for(int i = 0;i < nums.size();++i)

// 分別計算三個最大數字的積,與乙個最大數字與兩個最小數字的積

int res1 = numsmax[1] * numsmax[2] * numsmax[3];

int res2 = numsmax[3] * numsmin[0] * numsmin[1];

// 哪個大,哪個就是正確答案

cout << max(res1,res2) << endl;

return 0;

}

求三個數的最大 最小 中間值

求三個數的最大 最小 中間值 int a 3,b 5 int min a b a b printf min d n min int a 3,b 4 c 8 int min a b a b min min c min c int max a b?a b max max c max c printf m...

大爽Python入門練習題 1 6 三個數找中間值

大爽python入門練習題總目錄 第一章 中期練習題 簡單 第6題 簡介 實現乙個程式,輸入三個用空格分隔的數字 接收使用者輸入 輸出三個數中,中間大小的數。補充 只接受一行輸入。預設輸入是有效的。預設三個數都是正數。示例輸入示例 12 2 6 輸出示例 6輸入示例 2 1 3 輸出示例 2本小段沒...

從陣列中找出乘積最大的三個數

題目 給定乙個無序陣列,包含正數 負數和0,要求從中找出3個數的乘積,使得乘積最大,要求時間複雜度 o n 空間複雜度 o 1 輸入描述 無序整數陣列a n 輸出描述 滿足條件的最大乘積 輸入例子1 3 4 1 2 輸出例子1 24 思路 由於空間複雜度和時間複雜度的要求,肯定無法先排序,因為排序最...