PHP 도전에서 이것을 보았습니다. 목표는 최소한의 코드로 64 제곱 (8 * 8)의 체스 판을 만드는 것입니다. 간단하게 PHP에서 356 바이트로 만들었습니다 (인상적이지는 않습니다). 바닐라를 유지하는 한 원하는 언어로 만들 수 있으므로 수입품이 없습니다. 가장 작은 바이트 수가 이깁니다.
출력은 다음과 같아야합니다.
그리고 내 코드 :
<table><?php
$c='black';function p($c,$n){echo'<td style="width:50px;height:50px;background:'.$c.'"></td>';if($n==1){echo"<tr>";}}for($i=1;$i<=64;$i++){if($i%8==0&&$c=="black"){$c="white";$n=1;}elseif($i%8==0&&$c=="white"){$c="black";$n=1;}elseif(isset($n)&&$n==1){$n=0;}elseif($c=="black"){$n=0;$c="white";}elseif($c=="white"){$n=0;$c="black";}p($c,$n);}
또는 읽을 수 있습니다 :
<table><tr>
<?php
$color = 'black';
function printcolor($color, $nl) {
echo '<td style="width:50px; height:50px; background:' . $color . '"></td>';
if ($nl == true) {
echo "</tr><tr>";
}
}
for ($i=1; $i<=64;$i++) {
if ($i % 8 == 0 && $color == "black") {
$color = "white";
$nl = true;
} elseif ($i % 8 == 0 && $color == "white") {
$color = "black";
$nl = true;
} elseif (isset($nl) && $nl == true) {
$nl = false;
} elseif ($color == "black") {
$nl = false;
$color = "white";
}
elseif ($color == "white") {
$nl = false;
$color = "black";
}
printcolor($color, $nl);
}
편집하다:
처음에는 매우 구체적이지 않았습니다.
- 정사각형은 벡터 이미지를 제외하고 50px * 50px이어야합니다.
- 출력 형식이나 크기는 관련이 없으며 이미지 여야합니다.
- 평가 목적으로 이미지 파일 또는 스크린 샷과 같이 출력을 볼 수 있어야합니다.
- 챌린지가 게시 된 후 작성된 라이브러리가 없습니다.