ホームページ  >  記事  >  バックエンド開発  >  C プログラムで、合計が k 以下のトリプルを出力します。

C プログラムで、合計が k 以下のトリプルを出力します。

WBOY
WBOY転載
2023-09-07 08:37:271201ブラウズ

C プログラムで、合計が k 以下のトリプルを出力します。

要素のセットを含む配列が与えられた場合、タスクは、合計が k 以下である 3 つの要素を含むセットを見つけることです。

入力 strong>- arr[]= {1,2,3,8,5,4}

出力 - 設定 → {1, 2, 3} { 1, 2, 5} {1, 2, 4} {1, 3, 5} {1, 3, 4} {1, 5, 4} {2, 3, 5} {2, 3 , 4} p>

ここで、最初のタスクは、size-2 までの i の for ループ反復、size-1 までの j の for ループ反復、およびk からサイズ 1 までの for ループの繰り返し

アルゴリズム

START
Step 1 -> declare int variable sum to k (e.g. 10), i, j, k
Step 2 -> declare and initialise size with array size using sizeof(arr)/sizeof(arr[0])
Step 3 -> Loop For i to 0 and i<size-2 and i++
   Loop For j to i+1 and j<size-1 and j++
      Loop For k to j+1 and k<size and k++
         IF arr[i]+ arr[j] + arr[k] <= sum
            Print arr[i] and arr[j] and arr[k]
         End IF
      End Loop for
   End Loop For
Step 4 -> End Loop For
STOP

#include <stdio.h>
int main(int argc, char const *argv[]) {
   int arr[] = {1, 2, 3, 8, 5, 4};
   int sum = 10;
   int i, j, k;
   int size = sizeof(arr)/sizeof(arr[0]);
   for (i = 0; i < size-2; i++) {
      for (j = i+1; j < size-1; j++) {
         for (k = j+1; k < size; k++) {
            if( arr[i]+ arr[j] + arr[k] <= sum )
               printf( "{%d, %d, %d}</p><p>",arr[i], arr[j], arr[k] );
         }
      }
   }
   return 0;
}

出力

上記のプログラムを実行すると、次のものが生成されます。出力。

えええええ

以上がC プログラムで、合計が k 以下のトリプルを出力します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。