- var_dump: documentation ( source)
- max: documentation ( source)
- min: documentation ( source)
<?php
$births = [1997, 1997, 1997, 1998, 1999];
$deaths = [1998, 1999];
$years = [];
$min = PHP_INT_MAX;
$max = -1;
foreach ($births as $year) {
if (!isset($years[$year])) $years[$year] = 0;
$min = min($min, $year);
$max = max($max, $year);
$years[$year]++;
}
foreach ($deaths as $year) {
if (!isset($years[$year])) $years[$year] = 0;
$min = min($min, $year);
$max = max($max, $year);
$years[$year]--;
}
$acc = 0;
$maxYear = null;
$maxYearValue = null;
for ($i = $min; $i <= $max; $i++) {
if (!isset($years[$i])) {
continue;
}
$acc += $years[$i];
if ($acc > $maxYearValue) {
$maxYear = $i;
$maxYearValue = $acc;
}
}
var_dump($maxYear, $maxYearValue);