ในบทช่วยสอนนี้ เราจะพูดถึงโปรแกรมเพื่อค้นหาผลรวมสูงสุดของค่าที่น้อยที่สุดและค่าน้อยที่สุดอันดับสองในอาร์เรย์
สำหรับสิ่งนี้เราจะได้รับอาร์เรย์ที่มีจำนวนเต็ม งานของเราคือการหาผลรวมสูงสุดขององค์ประกอบที่เล็กที่สุดและน้อยที่สุดเป็นอันดับสองในทุก ๆ การวนซ้ำของอาร์เรย์ที่เป็นไปได้
ตัวอย่าง
#include <bits/stdc++.h>
using namespace std;
//returning maximum sum of smallest and
//second smallest elements
int pairWithMaxSum(int arr[], int N) {
if (N < 2)
return -1;
int res = arr[0] + arr[1];
for (int i=1; i<N-1; i++)
res = max(res, arr[i] + arr[i+1]);
return res;
}
int main() {
int arr[] = {4, 3, 1, 5, 6};
int N = sizeof(arr) / sizeof(int);
cout << pairWithMaxSum(arr, N) << endl;
return 0;
} ผลลัพธ์
11