cahyadsn

soalan 200716.001

Jul 15th, 2020
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.34 KB | None | 0 0
  1. <?php
  2. /* INPUT */
  3. //-- data source:
  4. //-- note : index mulai dari 1 bukan 0
  5. $k=array(
  6.     1=>array(3,'tilu'),
  7.     2=>array(5,'five'),
  8.     3=>array(1,'uno'),
  9.     4=>array(7,'pitu')
  10. );
  11.  
  12. //-- note : index mulai dari 1 bukan 0
  13. $b=array(
  14.     1=>10,
  15.     2=>16,
  16.     3=>5,
  17.     4=>7
  18. );
  19.  
  20. /* PROSES */
  21. /*
  22. nilai tiap2 item dengan index pertama pada array $k (semisal $k[1][0] utk item $k[1], atau $k[2][0] utk item $k[2]) adalah menunjukkan peringkat berdasarkan nilai dari array $b dari besar ke kecil (descending). Dimana ada urutan yang 'lompat' di array $k ini, yaitu 1<3<5<7 dan berkorelasi secara berurut dengan nilai dari array $b yaitu 16>10>7>5.
  23.  
  24. - array $k jika diurutkan berdasarkan index pertama itemnya adalah
  25. $k1=array(
  26.     3=>array(1,'uno'),
  27.     1=>array(3,'tilu'),
  28.     2=>array(5,'five'),
  29.     4=>array(7,'pitu')
  30. );
  31. - array $b jika diurutkan berdasarkan nilai itemnya adalah:
  32. $b=array(
  33.     2=>16,
  34.     1=>10,
  35.     4=>7,
  36.     3=>5
  37. );
  38.  
  39. Hasil yang diharapkan adalah berupa array dengan itemnya berisi array yang memuat index kedua item array $k, dan nilai item array $b. Data hasil diurutkan berdasarkan key/index array $b
  40. */
  41.  
  42. /* OUTPUT */
  43. //-- expected result:
  44. $hasil=array(
  45.     1=>array('tilu',10),
  46.     2=>array('uno',16),
  47.     3=>array('pitu',5),
  48.     4=>array('five',7)
  49. );
  50.  
  51. //--notes:  data berupa array digenerate secara random/acak bukan dari db jadi tidak utk diselesaikan secara SQL
Add Comment
Please, Sign In to add comment