frain8

Untitled

Nov 16th, 2019
211
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.35 KB | None | 0 0
  1. /* Dasproc C - 2019
  2. William Handi Wijaya
  3. 0087
  4.        
  5. Program untuk menentukan keuntungan maksimum yang bisa
  6. didapat jika harga barang yang dijual bersifat random
  7. dari beberapa pilihan harga.
  8. */
  9.  
  10.  
  11. #include <stdio.h>
  12. #include <string.h>
  13.  
  14. int main(void)
  15. {
  16.     // Get test_case
  17.     int t;
  18.     scanf("%d", &t);
  19.  
  20.     for (int i = 0; i < t; i++)
  21.     {
  22.         int jenis;
  23.         scanf("%d", &jenis);
  24.         int jumlah[jenis];
  25.         int harga[jenis];
  26.         for (int j = 0; j < jenis; j++)
  27.         {
  28.             scanf("%d", &jumlah[j]);
  29.         }
  30.         for (int j = 0; j < jenis; j++)
  31.         {
  32.             scanf("%d", &harga[j]);
  33.         }
  34.  
  35.         // urutkan jumlah
  36.         int max_jumlah[jenis];
  37.         memset(max_jumlah, 0, sizeof(int) * jenis);
  38.         int pin;
  39.         for (int j = 0; j < jenis; j++)
  40.         {
  41.             int tmp = 0;
  42.             for (int k = 0; k < jenis; k++)
  43.             {
  44.                 if (jumlah[k] > tmp)
  45.                 {
  46.                     tmp = jumlah[k];
  47.                     pin = k;
  48.                 }
  49.             }
  50.             max_jumlah[j] = tmp;
  51.             jumlah[pin] = 0;
  52.         }
  53.  
  54.         // urutkan harga
  55.         int max_harga[jenis];
  56.         memset(max_harga, 0, sizeof(int) * jenis);
  57.         for (int j = 0; j < jenis; j++)
  58.         {
  59.             int tmp = 0;
  60.             for (int k = 0; k < jenis; k++)
  61.             {
  62.                 if (harga[k] > tmp)
  63.                 {
  64.                     tmp = harga[k];
  65.                     pin = k;
  66.                 }
  67.             }
  68.             max_harga[j] = tmp;
  69.             harga[pin] = 0;
  70.         }
  71.  
  72.         int sum = 0;
  73.         for (int j = 0; j < jenis; j++)
  74.         {
  75.             sum += (max_harga[j] * max_jumlah[j]);
  76.         }
  77.         printf("%d\n", sum);
  78.     }
  79. }
Advertisement
Add Comment
Please, Sign In to add comment