|
|
|
|
<?php
$start = microtime(true);
//Количество счастливых и счастливых/симметричных билетов
$schastlivyi = 0;
$schastlyvyiSimm = 0;
//Запускаем цикл перебора всех значений билетов
for($i = 0; $i <= 999999; $i++){
//Дополняем число строкой, подставляя слева нули если она < 6-ти символов
$nomeraBiletov = str_pad($i, 6, "0", STR_PAD_LEFT);
//Превращаем строку в массив
$nomeraBiletov = str_split($nomeraBiletov);
//Если билетик счастливый, то
if(($nomeraBiletov[0] + $nomeraBiletov[1] + $nomeraBiletov[2]) ==
($nomeraBiletov[3] + $nomeraBiletov[4] + $nomeraBiletov[5])){
//Проверяем сначала, вдруг номерок к тому же и симметричный
//Разбиваем наш массив на два, по три ячейки
$leftPart = array_slice($nomeraBiletov,0,3);
$rightPart = array_slice($nomeraBiletov,3);
//Сравниваем два новых массива
$result = array_diff($leftPart,$rightPart);
//Если они симметричны, то увеличиваем количество билетов на 1
if(empty($result)){
$schastlyvyiSimm++;
//Ну а если номер не симметричный
}else{
$schastlivyi++;
}
}
}
//Выводим результат
echo 'Всего счастливых, но не симметричных билетов: '.$schastlivyi.' их стоимость: '. ($schastlivyi*3).
' рублей.<br>';
echo 'Всего счастливых и симметричных билетов: '.$schastlyvyiSimm.' их стоимость: '.($schastlyvyiSimm*10).
' рублей.<br>';
echo 'Всего счастливых симметричных и не симметричных билетов: '.($schastlivyi+$schastlyvyiSimm).
' прибыль от их продажи составит: '.(($schastlivyi*3)+($schastlyvyiSimm*10)).' рублей.<br>';
echo 'Всего чистый доход: '.((($schastlivyi*3)+($schastlyvyiSimm*10)) - 20000).' рублей.';
echo '<br><br>Время выполнения скрипта: '.(microtime(true) - $start).' сек.';
?>
|
Всего счастливых, но не симметричных билетов: 49992 их стоимость: 149976 рублей.
Всего счастливых и симметричных билетов: 5260 их стоимость: 52600 рублей.
Всего счастливых симметричных и не симметричных билетов: 55252 прибыль от их продажи составит: 202576 рублей.
Всего чистый доход: 182576 рублей.
Время выполнения скрипта: 2.6803719997406 сек. | |
|
|