Advertisement
dimipan80

Computer Smuggler

Apr 28th, 2015
223
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.39 KB | None | 0 0
  1. <?php
  2. $parts = preg_split('/,\s+/', $_GET['list'], -1, PREG_SPLIT_NO_EMPTY);
  3. $cpParts = array_fill_keys($parts, 0);
  4. foreach ($parts as $part) {
  5.     $cpParts[$part] += 1;
  6. }
  7.  
  8. $money = 0;
  9. foreach ($cpParts as $key => $count) {
  10.     switch ($key) {
  11.         case 'CPU':
  12.             $cost = 85 * $count;
  13.             break;
  14.         case 'RAM':
  15.             $cost = 35 * $count;
  16.             break;
  17.         case 'ROM':
  18.             $cost = 45 * $count;
  19.             break;
  20.         case 'VIA':
  21.             $cost = 45 * $count;
  22.             break;
  23.     }
  24.     if ($count >= 5) {
  25.         $cost /= 2;
  26.     }
  27.     $money -= $cost;
  28. }
  29.  
  30. $computers = 0;
  31. while ($cpParts['CPU'] > 0 && $cpParts['RAM'] > 0 && $cpParts['ROM'] > 0 && $cpParts['VIA'] > 0) {
  32.     $cpParts['CPU'] -= 1;
  33.     $cpParts['RAM'] -= 1;
  34.     $cpParts['ROM'] -= 1;
  35.     $cpParts['VIA'] -= 1;
  36.     $computers++;
  37.     $money += 420;
  38. }
  39.  
  40. $partsLeft = 0;
  41. foreach ($cpParts as $key => $count) {
  42.     switch ($key) {
  43.         case 'CPU':
  44.             $cost = 85 * $count;
  45.             $partsLeft += $count;
  46.             break;
  47.         case 'RAM':
  48.             $cost = 35 * $count;
  49.             $partsLeft += $count;
  50.             break;
  51.         case 'ROM':
  52.             $cost = 45 * $count;
  53.             $partsLeft += $count;
  54.             break;
  55.         case 'VIA':
  56.             $cost = 45 * $count;
  57.             $partsLeft += $count;
  58.             break;
  59.     }
  60.     $money += ($cost / 2);
  61. }
  62.  
  63. echo '<ul>';
  64. echo "<li>{$computers} computers assembled</li>";
  65. echo "<li>{$partsLeft} parts left</li>";
  66. echo '</ul>';
  67. if ($money > 0) {
  68.     echo "<p>Nakov gained {$money} leva</p>";
  69. } else {
  70.     echo "<p>Nakov lost {$money} leva</p>";
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement