fork download
  1. <?php
  2.  
  3.  
  4. $amount = 54500;
  5. $amount2 = $amount;
  6.  
  7. $bills = array(
  8. 5000 => 200,
  9. 1000 => 0,
  10. 500 => 5,
  11. 100 => 23,
  12. );
  13.  
  14. $result = array();
  15. $countBills = 0;
  16.  
  17.  
  18. foreach ($bills as $value => $count) {
  19. if ($count == 0){
  20. continue;
  21. } else {
  22. while (($amount >= $value) and ($count > 0)) {
  23. $amount -= $value;
  24. $countBills += 1;
  25. $count -= 1;
  26. }
  27. $result[$value] = $countBills;
  28. $countBills = 0;
  29. }
  30. }
  31. if ($amount != 0) {
  32. echo "Выдача невозможна.";
  33. exit();
  34. }
  35.  
  36. echo "Сумма: $amount2\n";
  37. echo "Выдача возможна, число купюр: \n";
  38. foreach ($result as $value => $amount) {
  39. echo "{$amount}x{$value} ";
  40. }
  41.  
Success #stdin #stdout 0.02s 52488KB
stdin
Standard input is empty
stdout
Сумма: 54500
Выдача возможна, число купюр: 
10x5000 5x500 20x100