CODE: Phoenix Oscar Romeo November - PHP
Дали някой от екипа на СофтУни с разширен достъп в джъджа би бил така добър да ми изпрати инпута и очаквания аутпут за два теста на една изпитна задача - става дума за тестове 6 и 10 на последната задача от изпита на 4 септ 2017 по Programming Fumdamentals Extended - Problem 4. CODE: Phoenix Oscar Romeo November.
Опитвам се да реша задачата на PHP, но получавам постоянно 80/100 и проблемът е в тестове 6 и 10, но те са скрити и не мога да разбера какъв точно и проблемът.
Ето и самото решение, ако някой може да помогне само въз основа на условието на задачата
https://judge.softuni.bg/Contests/761/Progr-Fund-Extended-Retake-Exam-04-Sept-2017-Part-II
<?php
$creatures = [];
while(1)
{
$input = readline();
if($input == 'Blaze it!') break;
$input = explode(' -> ', $input);
if( $input[0] == $input[1] || ( array_key_exists($input[0], $creatures) && in_array($input[1],$creatures[$input[0]]) ) ) continue;
else{
if( !array_key_exists($input[0],$creatures) ){
$creatures[$input[0]] = array();
$creatures[$input[0]][0] = $input[1];
}
else{
$creatures[$input[0]][] = $input[1];
}
}
}
$counts = array();
foreach($creatures as $key => $array_value){
$counts[$key] = count($array_value);
foreach($array_value as $squadMate){
if( array_key_exists($squadMate, $creatures) && in_array($key,$creatures[$squadMate]) ) $counts[$key]--;
}
}
uasort($counts, function($x,$y){return $y-$x;});
foreach($counts as $key => $value){
echo $key . " : " . $value . "\n";
}