在 C++ 中找到总和为给定值的三元组

在本教程中,我们将编写一个程序,在数组中查找总和等于给定数字的三元组。

让我们看看解决问题的步骤。

  • 使用虚拟数据创建数组。

  • 为三个元素编写三个内部循环,迭代直到数组结束。

    • 添加三个元素。

    • 将总和与给定的数字进行比较。

    • 如果两者相等,则打印元素并打破循环。

示例

让我们看看代码。

#include <bits/stdc++.h>
using namespace std;
bool findTriplet(int arr[], int arr_size, int sum) {
   for (int i = 0; i < arr_size - 2; i++) {
      for (int j = i + 1; j < arr_size - 1; j++) {
         for (int k = j + 1; k < arr_size; k++) {
            if (arr[i] + arr[j] + arr[k] == sum) {
               cout << arr[i] << " " << arr[j] << " " << arr[k] << endl;
               return true;
            }
         }
      }
   }
   return false;
}
int main() {
   int arr[] = { 1, 2, 3, 4, 5, 6, 7 };
   findTriplet(arr, 7, 12);
   return 0;
}
输出结果

如果你执行上面的程序,那么你会得到下面的结果。

1 4 7

结论

如果您对本教程有任何疑问,请在评论部分提及。