挑战是:
我的代码是:
<?php
$N=5;
if($N%2==0 && $N>20){
echo "Not Weird";
}else{
echo "Weird";
}
?>
问题是:
当我在本地车辙时,没关系。但是,当我将其提交给 HackerRank 时,它会在$N=5;
案件时失败。根据挑战我的条件是否有任何问题?
答案 0 :(得分:1)
<?php
$n=5;
if($n%2==1){
echo 'Weird';
}else{
if($n >= 2 && $n <= 5){
echo 'Not Weird';
}elseif($n > 5 && $n <= 20){
echo 'Weird';
}else{
echo 'Not Weird';
}
}
?>
答案 1 :(得分:1)
我很惊讶它在当地适合你。它不应该。您的“非奇怪”条件仅适用于大于20的偶数。您没有包含任何可以涵盖特殊情况的条件(对于8,8,10等奇怪)。
一个有效的解决方案是:
<?php
if ($N%2 == 0 && ($N < 6 || $N > 20)) {
echo "Not Weird";
} else {
echo "Weird";
}
第一个条件显示Not Weird只有当数字是偶数时,低于6,或者大于20.对于所有其他数字 - 奇数,甚至是6到20的范围,它显示为奇怪。